标签: asp.net-mvc-3

在asp.net MVC中不使用LabelFor Helper获取DisplayName属性

检索模型中项目的显示名称属性的最佳方法是什么?我看到很多人使用LabelFor帮助程序来处理所有事情,但如果我只想列出数据,那么标签就不合适了.有一个简单的方法只是获取名称属性,如果我只想打印出来,比如段落?

asp.net asp.net-mvc html-helper asp.net-mvc-3 asp.net-mvc-2

62
推荐指数
2
解决办法
3万
查看次数

如何使用Entity Framework CodeFirst使我的数据库成为种子?

数据库已成功创建(与表一样)但未加种.我花了几个小时阅读了大量文章但却未能得到它.有什么建议?

另外,是否可以在客户端中没有引用我的DatabaseContext的情况下调用初始化程序?

我已经包含了我能想到的所有相关代码.如果有任何其他方面的帮助,请告诉我.

我试过的事情:

  1. 我删除了我的连接字符串(因为它默认为sqlexpress,只是更改了名称)
  2. 我将DropCreateDatabaseIfModelChanges更改为DropCreateDatabaseAlways,仍然相同.

编辑:非常奇怪的是它曾经工作过一次,但我不知道它是如何或为什么再次破坏.我假设连接字符串,但谁知道.

DatabaseInitializer.cs

public class DatabaseInitializer : DropCreateDatabaseIfModelChanges<DatabaseContext>
{
  protected override void Seed(DatabaseContext context)
  {
    // Seeding data here
    context.SaveChanges();
  }
}
Run Code Online (Sandbox Code Playgroud)

DatabaseContext.cs

public class DatabaseContext : DbContext
{
  protected override void OnModelCreating(DbModelBuilder mb)
  {
    // Random mapping code
  }

  public DbSet<Entity1> Entities1 { get; set; }
  public DbSet<Entity2> Entities2 { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

Global.asax.cs - Application_Start()

protected void Application_Start()
{
  Database.SetInitializer<DatabaseContext>(new DatabaseInitializer());
  AreaRegistration.RegisterAllAreas();
  RegisterGlobalFilters(GlobalFilters.Filters);
  RegisterRoutes(RouteTable.Routes);
}
Run Code Online (Sandbox Code Playgroud)

客户端web.config

<connectionStrings>
  <add name="DatabaseContext" connectionString="data source=.\SQLEXPRESS;Database=Database;Integrated Security=SSPI;" …
Run Code Online (Sandbox Code Playgroud)

frameworks entity entity-framework code-first asp.net-mvc-3

62
推荐指数
3
解决办法
7万
查看次数

asp.net MVC3 razor:根据用户角色显示actionlink

我是MVC的新手.我希望能够为某些用户隐藏一些动作链接.假设我有一个"创建"动作链接,我只希望管理员查看并单击.我想在asp.net中使用某种"loggedmpmplate",但它似乎不适用于剃须刀.

我可以使用某种代码块和if语句检查当前用户及其角色,但这可能不是最佳做法?

我的index.cshtml ..

// want some adminauth attribute here...
@Html.ActionLink("Create New", "Create")
Run Code Online (Sandbox Code Playgroud)

我的控制器..

// GET: /Speaker/Create
[Authorize(Roles = "Administrators")]
public ActionResult Create()
{
    return View();
}
Run Code Online (Sandbox Code Playgroud)

c# razor asp.net-mvc-3

62
推荐指数
3
解决办法
4万
查看次数

MVC自定义验证:比较两个日期

我创建了一个自定义ValidationAttribute来比较2个日期,并确保第二个日期大于第一个日期:

public sealed class IsDateAfter : ValidationAttribute, IClientValidatable
{
    private readonly string testedPropertyName;
    private readonly bool allowEqualDates;

    public IsDateAfter(string testedPropertyName, bool allowEqualDates = false)
    {
        this.testedPropertyName = testedPropertyName;
        this.allowEqualDates = allowEqualDates;
    }

    protected override ValidationResult IsValid(object value, ValidationContext validationContext)
    {
        var propertyTestedInfo = validationContext.ObjectType.GetProperty(this.testedPropertyName);
        if (propertyTestedInfo == null)
        {
            return new ValidationResult(string.Format("unknown property {0}", this.testedPropertyName));
        }

        var propertyTestedValue = propertyTestedInfo.GetValue(validationContext.ObjectInstance, null);

        if (value == null || !(value is DateTime))
        {
            return ValidationResult.Success;
        }

        if (propertyTestedValue == null || !(propertyTestedValue is …
Run Code Online (Sandbox Code Playgroud)

validation asp.net-mvc jquery asp.net-mvc-3

62
推荐指数
1
解决办法
3万
查看次数

从JavaScript调用ASP.NET MVC操作方法

我有这样的示例代码:

 <div class="cart">
      <a onclick="addToCart('@Model.productId');" class="button"><span>Add to Cart</span></a>
 </div>
 <div class="wishlist">
      <a onclick="addToWishList('@Model.productId');">Add to Wish List</a>
 </div>
 <div class="compare">
      <a onclick="addToCompare('@Model.productId');">Add to Compare</a>
 </div>    
Run Code Online (Sandbox Code Playgroud)

如何编写JavaScript代码来调用控制器操作方法?

javascript asp.net-mvc razor asp.net-mvc-3

62
推荐指数
7
解决办法
20万
查看次数

从ASP.NET MVC 3开始,MicrosoftAjax.js,MicrosoftMvcAjax.js和MicrosoftMvcValidation.js是否已过时?

MicrosoftAjax.js,MicrosoftMvcAjax.jsMicrosoftMvcValidation.js过时的ASP.NET MVC 3的?我无法在网上找到关于此的更多信息,但从我所看到的内容暗示这些文件在ASP.NET MVC 1-2中使用,并被替换为jquery.validate.min.js,jquery.unobtrusive-ajax.min.jsjquery.validate.unobtrusive.min.js.那是对的吗?我还需要Microsoft文件吗?

javascript ajax asp.net-ajax asp.net-mvc-3

61
推荐指数
2
解决办法
4万
查看次数

任何大于0的正则表达式?

将验证应用于MVC中的模型,并希望使用Regex进行验证.

希望验证我的模型上的ID在提交时大于0.

regex model asp.net-mvc-3

61
推荐指数
4
解决办法
14万
查看次数

将日期时间从javascript传递给c#(控制器)

你如何使用jquery和mvc3将日期时间(我需要它到第二个)传递给c#.这就是我所拥有的

var date = new Date();    
$.ajax(
   {
       type: "POST",
       url: "/Group/Refresh",
       contentType: "application/json; charset=utf-8",
       data: "{ 'MyDate': " + date.toUTCString() + " }",
       success: function (result) {
           //do something
       },
       error: function (req, status, error) {
           //error                        
       }
   });
Run Code Online (Sandbox Code Playgroud)

我不知道日期应该是什么格式,让C#理解它.

c# jquery json asp.net-mvc-3

60
推荐指数
3
解决办法
9万
查看次数

如何在asp.net mvc 3 razor视图中使用reportviewer控件?

我正在尝试在剃须刀视图中使用reportviewer控件,在mvc 3框架中.该在线文档拖放会谈.有关如何将其插入视图的任何建议.

reportviewer razor asp.net-mvc-3

60
推荐指数
5
解决办法
12万
查看次数

如何在剃刀文件中指定CSS @media?

我有以下内容:

@if (Model.PageMeta.Sidebar == PageMetaSidebar.Small) { Html.RenderPartial("_SmallSidebar"); }
Run Code Online (Sandbox Code Playgroud)

在我的包含文件中:

<style "text/css">
    #sbr { width: 193px; }
    #lft { left: 205px; top: 85px; right:  5px; bottom: 30px; }
    #top { left: 215px; top: 85px; right: 15px; }
    #btm { left: 215px; right: 15px; bottom: 30px; }
    #mdl { left: 215px; top: 85px; right: 15px; bottom: 30px; }
    @media print {
        div#lft {left:10px; right: 10px; top: 0px;}
        div#top {left:20px; right: 20px; top: 0px;}
        div#btm {left:20px; right: 20px; }
        div#mdl {left:20px; right: 20px; …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc razor asp.net-mvc-3

60
推荐指数
1
解决办法
3万
查看次数