草庐IT

模型剪枝

全部标签

c# - 单个 View 中的多个模型 (C# MVC3)

我正在使用C#和MVC3。我有一个页面,例如学生列表,显示学生列表,这是数据库驱动的。同时我的菜单是数据库驱动的,所以我也必须将它发送到View。如何将两个模型发送到一个View? 最佳答案 您应该始终为您的View创建单独的ViewModel。应该有从您的View到您的领域模型的抽象。在演示/教程中,他们通过简单地将View强类型化到域模型来非常简单地展示这一切,但这不是一个好的策略。View不应依赖于业务对象。您应该为您当前的场景和所有其他View实现DavidGlenn建议的解决方案,即使需要将域模型映射到另一个View模型类

c# - 我可以在没有模型绑定(bind)的情况下检查模型状态吗?

我正在接触EntityFramework,想知道是否有一种方法可以让我在不发生模型绑定(bind)的情况下检查模型状态。假设我主要通过代码创建一个用户,有没有办法让我在更新之前根据我预定义的数据注释检查它是否有效?publicActionResultIndex(){Useru=newUser();u.Username="test";u.Password="test";u.Email="test";DefaultContextdb=newDefaultContext();if(ModelState.IsValid){db.Users.Add(u);db.SaveChanges();Res

c# - 验证特定字符串值的模型

我正在从事WebAPI2项目。除了要求某些属性是必需的之外,有些属性只能具有特定值。一种选择是我可以尝试将模型保存到数据库(EF6)并在保存时创建一些逻辑,但我认为最好在调用数据库之前验证是否设置了正确的值。数据注释是否提供像Range这样的属性,然后像下面的示例那样提供特定的字符串值?还是我必须编写自己的验证器属性?publicclassPerson{publicintPersonID{get;set;}[Required]publicstringFirstName{get;set;}publicstringLastName{get;set;}[StringRange("M","F"

c# - SharePoint 2010 - 客户端对象模型 - 将附件添加到 ListItem

我有一个SharePoint列表,我正在使用客户端对象模型向其中添加新的ListItem。添加ListItems不是问题,而且效果很好。现在我要添加附件。我按以下方式使用SaveBinaryDirect:File.SaveBinaryDirect(clientCtx,url.AbsolutePath+"/Attachments/31/"+fileName,inputStream,true);只要我尝试添加附件的项目已经具有通过SharePoint站点添加的附件且未使用客户端对象模型,它就可以正常工作。当我尝试向尚无任何附件的项目添加附件时,我收到以下错误(两者都发生但不是针对相同的文件

c# - C# 模型的自定义 setter

我不知道如何为C#数据模型制作自定义setter。场景很简单,我想让我的密码用SHA256函数自动加密。SHA256函数非常有效(我之前在无数项目中使用过)。我已经尝试了一些事情,但是当我运行update-database时,它似乎在递归地做一些事情并且我的VisualStudio挂起(不发送错误)。请帮助我了解如何在模型中默认加密密码。使用我已经尝试过的代码publicclassAdministrator{publicintID{get;set;}[Required]publicstringUsername{get;set;}[Required]publicstringPasswor

c# - 实体类型 IdentityUser 不是当前上下文模型的一部分

我看到与this相同的问题问题,但那里提出的情况似乎并不适用,所以我认为我有一个不同的问题。事实上,我在SO上看到了几个类似的问题,每个问题都有不同的原因和解决方案,所以我认为这个错误必须来自高层。也就是说……我有一个EF代码优先数据库模型,我正在尝试使用IdentityUser来扩展我的MVC5站点的标准注册。我有扩展的UserModel:namespaceMyMvcSite.Models{publicclassUserModel:IdentityUser{publicstringBillingId{get;set;}publicvirtualICollectionDatabases

c# - 更改参数名称 Web Api 模型绑定(bind)

我正在使用WebAPI模型绑定(bind)来解析来自URL的查询参数。例如,这是一个模型类:publicclassQueryParameters{[Required]publicstringCap{get;set;}[Required]publicstringId{get;set;}}当我调用像/api/values/5?cap=somecap&id=1这样的东西时,这工作正常。有什么方法可以更改模型类中的属性名称但保持查询参数名称相同-例如:publicclassQueryParameters{[Required]publicstringCapability{get;set;}[Re

c# - 存储库、管道、业务逻辑和域模型——我如何将它们组合在一起?

我在设计N层应用程序时遇到了一个难题,您可能有解决方案。表示层是MVC。我的ORM是使用LinqToSQL执行的-它是一个为存储库提供服务的独立项目。每个存储库都有一个接口(interface)和至少1个具体实现。Repositories有以下方法:FindAll(),Save(Tentity),Delete(intid)FindAll()返回某种类型的IQueryable,这意味着它返回我可以应用过滤器的查询。ORM映射是使用数据库优先方法执行的,首先创建表,然后由SQLMetal生成类。我添加了一个与存储库一起使用的管道层。它将进一步的过滤器应用于查询。例如。OrderReposi

c# - 如何将 View 模型的 caliburn.micro 绑定(bind)到组合框选择的值?

对于WPF和Caliburn.Micro,我的曲线相对较低。我的目标是将组合框所选项目的绑定(bind)从ShellView的代码隐藏到View模型,就像组合框的项目集合已经这样做一样。XAML:代码隐藏(目标是不必添加任何代码,如果我理解正确的话):namespaceEomDatabaseUtility.Views{usingSystem.Windows;publicpartialclassShellView:Window{publicShellView(){InitializeComponent();}//-->Thisshouldgointheviewmodel,Right?pr

c# - 传递两个模型查看

这个问题在这里已经有了答案:ASP.NETMVC-Viewwithmultiplemodels(4个答案)关闭8年前。我是mvc的新手,尝试通过用它做一个小项目来学习它。我有一个页面应该显示特定日期的货币和天气。所以我应该通过货币模型和天气模型。我已经通过货币模型并且工作正常但我不知道如何通过第二个模型。并且大多数教程都展示了如何只传递一个模型。你们能告诉我怎么做吗?这是我当前发送货币模型的ControllerActionpublicActionResultIndex(intyear,intmonth,intday){varmodel=fromrin_db.Currencieswher