小编Naz*_*gol的帖子

从DbValidationException获取确切的错误类型

我有这样的情况,我在DatabaseInitializer()中为EF 4.1初始化我的模型,并得到这个恼人的错误"Validation failed for one or more entities. See 'EntityValidationErrors' property for more details."所以,我去了这个EntityValidationErrors,有一个字段{System.Data.Entity.Validation.DbEntityValidationResult},根本没有给我任何关于它无法初始化的字段的信息.有没有办法获得有关此错误的更多信息?

清除问题:

我知道如何解决字符串长度问题.我问的是如何获得打破模型的确切字段名称.

.net entity-framework ef-code-first entity-framework-4.1

183
推荐指数
3
解决办法
5万
查看次数

NuGet(NuPack)intellisense(Visual Studio包管理器控制台)

我对NuGet的智能感知并没有显现出来.或者也许有某种捷径?

.net visual-studio nuget

31
推荐指数
1
解决办法
9341
查看次数

如何过滤嵌套集合Entity Framework对象?

这是问题所在:我需要返回带有过滤嵌套集合的对象集合.例如:有一个带有订单的商店,我需要返回一个包含商店的集合,这些商店包含带有订单的嵌套集合,但没有标记为已删除的客户的订单.

这是我尝试做的.但仍然没有运气.任何建议值得赞赏:)

public List<StoreEntity> GetStores(Func<Store, bool> storeFilter, Predicate<OrderEntity> orderFileter)
{
    IQueryable<StoreEntity> storeEntities = Context.Stores
        .Include(o => o.Order)
        .Include(cu => cu.Orders.Select(c => c.Customer))
        .Where(storeFilter)
        //.Where(rcu=>rcu.Orders.Select(cu=>cu.Customer.Deleted==false)) //just test this doesn't work
        .AsQueryable();

    List<StoreEntity> storeEntities = storeEntities.ToList();

    //storeEntities.ForEach(s => s.Orders.ToList().RemoveAll(c=>c.Customer.Deleted==true)); // doesn't work

    foreach (StoreEntity storeEntity in storeEntities)
    {
        storeEntity.Orders.ToList().RemoveAll(r=>r.Customer.Deleted==true);
    }

    return storeEntities;
}
Run Code Online (Sandbox Code Playgroud)

问题是没有应用过滤器.已将已删除标记设置为true的客户留在集合中.

linq entity-framework filtering entity-framework-4.1

23
推荐指数
1
解决办法
5万
查看次数

EF Code First 4.1根本不支持nvarchar(max)?

我花了相当多的时间来解决这个问题,但仍然无法弄清楚为什么EF团队使用Code First让生活如此艰难.

以下是一些示例:

我的POCO:

我想要的东西看起来像:

public class Post
{
     public int Id {get; set;}
     public string Text {get; set;}
}

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    modelBuilder.Entity<Post>()
        .Property(p => p.Text)
        .HasColumnType("nvarchar(max)");   
}
Run Code Online (Sandbox Code Playgroud)

唯一有效的方法:

public class Post
{
     public int Id {get; set;}

     [StringLength(4000)]
     public string Text {get; set;}
}
Run Code Online (Sandbox Code Playgroud)

问题是,在第一种情况下,我尝试插入它给我的任何东西:Validation failed for one or more entities第二种情况不适合我的商业模式.

我是唯一有这个问题的人吗?我该如何处理这件事?

orm entity-framework ef-code-first entity-framework-4.1

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

ASP.NET MVC 3书籍计划

有没有人知道什么时候第一本ASP.NET MVC 3出版?我知道这有点早,但我想知道Apress,Wrox或任何其他出版商是否有一些发布日期.

asp.net-mvc-3

17
推荐指数
2
解决办法
1万
查看次数

具有多语言支持的Durandal(淘汰赛)应用程序

我正在为我正在开发的应用程序构建多语言支持.在做了一些研究和阅读SO(国际化最佳实践)后,我试图以"框架友好"的方式将其整合.我现在所做的是:

创建的.resource模块格式如下:

resources.en-US.js

define(function () {
   return {
       helloWorlLabelText: "Hello world!"
   }
});
Run Code Online (Sandbox Code Playgroud)

在app.start上,我获得了带有requirejs的资源模块,并将所有数据分配给app.resources.在每个模块内部,特定资源被分配给可观察对象,并通过文本绑定到标签和其他与文本相关的东西来绑定.像这样:

define(function (require) {
   var app = require('durandal/app'),
       router = require('durandal/plugins/router')
   };
   return{
       helloWorldLabelText: ko.observable(app.resources.helloWorldLabelText),

       canDeactivate: function () { 
      }
   }
});

On the view:

<label for="hello-world" data-bind="text: helloWorldLabelText"></label>
Run Code Online (Sandbox Code Playgroud)

只需将新模块分配给app.resources即可交换资源.

现在问题是当语言被改变并且一些视图已经被渲染时,先前语言的值仍然存在.所以我最终在activate方法中重新分配了observable .还尝试将app.resources包装到observable中,但这也不起作用.

我不认为我最干净的方式,也许还有其他人可以分享其他方式.谢谢.

javascript internationalization requirejs knockout.js durandal

14
推荐指数
1
解决办法
5356
查看次数

那么是否在ASP.NET MVC 3中构建了[Email]属性?

[Email]属性将被构建到ASP.NET MVC 3中,就像它在期货中一样?它现在可用还是不可用?我想这是一个相当愚蠢的问题,但我花了一些时间谷歌搜索,并没有找到任何正常的答案.

电子邮件正则表达式:

"^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$"
Run Code Online (Sandbox Code Playgroud)

.net validation attributes data-annotations asp.net-mvc-3

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

使用EF,存储库,实体清洁解决方案(项目)结构

我希望尽可能保持项目结构的清洁.样品:

--BlogApp.sln
  --BlogApp.Data
      BlogModel.edmx (the EF mappings)
      Post.cs (I end up having partial classes in here with attributes)
  --BlogApp.Domain
    --Entities
        Post.cs (I would like to have my POCOs here with all its additional logic)
    --Repositories
        PostsRepository.cs
  --BlogApp.Ui
      (standard MVC structure)
Run Code Online (Sandbox Code Playgroud)

当我使用EF作为我的ORM时,我最终弄得一团糟.任何人都可以建议一些"干净"的方式来构建项目吗?或许您可以建议一些最常用的标准项目结构.

asp.net-mvc entity-framework projects-and-solutions project-structure

9
推荐指数
1
解决办法
8008
查看次数

自定义T4生成器生成的类看起来很乱

运行生成器输出文件后,代码看起来真的很混乱.我知道我可能永远不会查看这些文件,但很高兴看到在开发生成器时生成的代码结构很好.

欢迎任何建议.

.net c# t4 code-generation

9
推荐指数
1
解决办法
1332
查看次数

使用CSS预处理器有什么优点/缺点(例如Sass,LESS)

现在很少有任何项目不使用任何类型的CSS预处理器,如Sass或LESS.虽然它已被广泛接受并且优势非常明显(如更结构化的代码,没有include性能下降和许多其他).如果有任何huge缺点,我会徘徊.我能想到的就是太大的嵌套选择器,它们在重新绘制/回流期间表现不佳.not使用预处理器的任何其他原因?

css sass less css-preprocessor

9
推荐指数
1
解决办法
8169
查看次数