草庐IT

模型剪枝

全部标签

c# - EDMX模型不同的代码生成项有什么本质区别?

我正在努力提升EntityFramework,这样我就不会觉得自己身处黑暗时代。我尝试(迄今为止失败了)从生成的代码中了解可用代码生成项之间的本质区别。POCO似乎将实体数据结构与将它们移入/移出数据存储的对象隔离开来。我不确定“self跟踪实体”是什么。我猜跟踪部分指的是实现所谓的“工作单元”模式,但我不是肯定的。更令人头疼的是,我想我想知道“self跟踪而不是什么?”。 最佳答案 POCO生成器POCO代表普通旧C#(或CLR)对象。POCO独立于EF。它们只是遵循一些规则的类,但如果你愿意,你可以从你自己的类型继承它们。它们也

c# - EF Code First 中的模型 n--n 关系如何与自动生成的 View 正常工作?

我使用EFCodeFirst并在n-n关系中遇到问题,假设我们有一位歌手演唱某些流派,所以我们需要这个模型:艺术家、流派和艺术家流派,我将模型定义如下:这是我的艺术家模型:publicclassArtist{publiclongId{get;set;}publicstringName{get;set;}publicICollectionGenres{get;set;}}还有我的流派模型:publicclassGenre{publiclongId{get;set;}publicstringTitle{get;set;}publicICollectionArtists{get;set;}}

c# - 在 ASP.NET MVC3 模型绑定(bind)器中使用依赖注入(inject)

我正在MVC3网站上工作,尝试使用Ninject来解决我的依赖关系。我有以下场景:publicclassUserModelBinder:IModelBinder{//[Inject]publicUserDataServiceuserData{get;set;}publicobjectBindModel(ControllerContextcontrollerContext,ModelBindingContextbindingContext){GuidUserID=(Guid)Membership.GetUser().ProviderUserKey;//userDataService=De

c# - ASP.Net MVC 回发和模型

这主要是本期评论的后续,但我没有足够的声誉来发表评论......ASP.NetMVCPostbackalabelvaluetoyourcontroller假设我有一个简单的模型:publicclassSimpleClass{publicStringLabel{get;set;}publicStringFirstName{get;set;}}标签根据用户/客户端更改,因此它不能是DataAttribute。如果回发处理时出现问题,我们需要重绘整个页面。这就是上一篇文章的症结所在。公认的解决方案是这样做:@Html.DisplayTextFor(model=>model.Label)@Ht

c# - 如何在 View 模型中执行列表? + 数据注释

我正在使用asp.netmvc3、数据注释和自动映射器。一旦属性通过验证,我想在我的View模型中对属性进行所有注释,我使用自动映射器将其映射回我的域对象。我有一个View模型,它具有我想要收集的属性,因为我想从它们生成一个表。我还想稍后使用它们作为向该表添加行的表单。那我该怎么办?我如何获取这些属性并收集它们?publicclassUserViewModel(){[Required()]publicstringUserName={get;set;}[Required()]publicstringFirstName={get;set;}[Required()]publicstringL

c# - MVC .NET 在强类型 View 中从模型集合创建下拉列表

所以我有一个像这样的集合类型的View:>"%>OrganizationDTO看起来像这样:publicOrganizationDTO{intorgID{get;set;}stringorgName{get;set;}}我只是想使用HTML帮助程序从OrganizationDTO的集合中创建一个下拉列表,但我无法弄清楚!我是不是用错了方法?我应该使用foreach循环来创建选择框吗? 最佳答案 我用像你这样的模型做了一个小例子:publicclassOrganizationDTO{publicintorgID{get;set;}pu

c# - .Net 核心模型绑定(bind) JSON 发布到 Web API

刚开始使用.NETCore的新项目。添加了我的WebAPIController和相关方法。我使用Postman创建了一个JSON对象并将其发布到我的Controller方法中。请记住,JSON对象与Controller方法中的对象参数完全匹配。在Debug模式下我可以看到对象,它不是空的,属性在那里,但是属性值默认为它们的代表类型,0forint等我以前从未见过这种行为……所以我采用了完全相同的代码和对象,并在带有WebAPI2Controller的MVC项目中进行了复制,它运行得非常完美。我错过了什么,我不能在.NETCore中发布JSON和模型绑定(bind)吗?阅读这篇文章似乎我

c# - 如何获得对模型绑定(bind)的控制?

我最近开始使用MVC,我有点失望。该框架非但没有帮助我,反而妨碍了我。我正在尝试编写这样的Controller操作(伪代码)ActionResultSave(longid,stringwhichForm){if(whichForm=="A"){varvm=CreateModel(Request.Form);if(!TryValidate(vm))returnView(vm);elsereturnRedirectToRoute("Success");}else....}基本上,我想控制我的View模型何时构建以及何时验证。这可能吗?如何实现CreateModel方法?考虑一下我可能想在此

c# - 使用@Json.Encode 时隐藏模型中的字段

在我的ASP.NETMVC4应用程序中,我有这样定义的模型:publicclassEmployee:BaseObject{[JsonIgnore]publicstringFirstName{get;set;}[JsonIgnore]publicstringLastName{get;set;}[JsonIgnore]publicstringManager{get;set;}publicstringLogin{get;set;}...}当我使用ApiController返回此对象时,我得到正确的对象without字段具有JsonIgnore属性,但是当我尝试使用以下代码在cshtml文件中

c# - 我应该在哪里放置我的域模型以查看模型映射代码?

目前我在我的Controller文件中使用私有(private)静态方法将域模型映射到View模型,反之亦然。如下所示:publicActionResultDetails(intpersonID){PersonpersonDM=service.Get(personID);PersonViewModelpersonVM=MapDmToVm(personDM);returnView(personVM);}privatestaticPersonViewModelMapDmToVm(Persondm){PersonViewModelvm;//MaptoVMreturnvm;}还有其他标准方法可