参考http://www.cnblogs.com/powertoolsteam/archive/2013/01/11/2855935.html
我在新建MoviesController.cs时候,报错并且没有生成Create.cshtml、 Delete.cshtml、 Details.cshtml、 Edit.cshtml和Index.cshtml 文件。
报错如下:
求各位解答
通过修改
C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC 4\CodeTemplates\AddView\CSHTML
目录中的那些tt代码文件,能够实现了。
但是这文件应该是MVC4生成的,为什么会报错呢,红色位置代码。我指定了namespace!
通过查阅msdn,发现只有Entity Framework 5.0 的System.ComponentModel.DataAnnotations 中才有ColumnAttribute属性,这是为何?难道我的电脑中有Entity Framework 5.0?
bool IsPrimaryKey(PropertyInfo property) {
if (string.Equals(property.Name, "id", StringComparison.OrdinalIgnoreCase)) { // EF Code First convention
return true;
}
if (string.Equals(property.Name, property.DeclaringType.Name + "id", StringComparison.OrdinalIgnoreCase)) { // EF Code First convention
return true;
}
foreach (object attribute in property.GetCustomAttributes(true)) {
if (attribute is KeyAttribute) { // WCF RIA Services and EF Code First explicit
return true;
}
var edmScalar = attribute as EdmScalarPropertyAttribute;
if (edmScalar != null && edmScalar.EntityKeyProperty) { // EF traditional
return true;
}
//var column = attribute as ColumnAttribute;
var column = attribute as System.Data.Linq.Mapping.ColumnAttribute;
(column != null && column.IsPrimaryKey) { // LINQ to SQL
return true;
}
}
return false;
}
没人关注没人回答,关闭!