Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.Net MVC-在程序集之间重写窗体_C#_.net_Asp.net Mvc - Fatal编程技术网

C# ASP.Net MVC-在程序集之间重写窗体

C# ASP.Net MVC-在程序集之间重写窗体,c#,.net,asp.net-mvc,C#,.net,Asp.net Mvc,以下是我的工作申请的背景: 堆芯组件 模型库模型 MyController.Save(模型库模型) Site1组件 MyModel:ModelBase 站点2组件 MyModel:ModelBase Site1和Site2都引用核心程序集,并且都是已部署的网站 Core充当一个引用asp mvc程序集的库 公共类模型库:IValidatableObject { 公共虚拟字符串FirstName{get;set;} 公共虚拟字符串LastName{get;set;} //[…]表对

以下是我的工作申请的背景:

  • 堆芯组件
    • 模型库模型
    • MyController.Save(模型库模型)
  • Site1组件
    • MyModel:ModelBase
  • 站点2组件
    • MyModel:ModelBase
Site1和Site2都引用核心程序集,并且都是已部署的网站

Core充当一个引用asp mvc程序集的库

公共类模型库:IValidatableObject
{
公共虚拟字符串FirstName{get;set;}
公共虚拟字符串LastName{get;set;}
//[…]表对象内容
}
公共类MyController:Controller{
公共操作结果保存(模型库模型){
如果(!ModelState.IsValid)返回视图(model);
返回重定向(“/Success”);
}
}
现在在Site1程序集中,我有类似的东西

在Site2程序集中,我有类似的东西

我想要的是:

  • 要在核心组件中仅保存保存逻辑(MyController的保存方法)

  • 能够在每个站点*.MyModel中说明此字段是否为必填字段,从而让控制器对此采取行动

  • 如果模型无效,我希望在视图中使用具体模型(MyModel),而不是“基本”模型(ModelBase),这样视图将显示并生成正确的验证内容。

感谢您的帮助,如果您需要更多详细信息,请与我联系:)

public class MyModel : ModelBase
{
    [Required]
    [Display(/*...*/)]
    public override String FirstName { get; set; }
    public override String LastName { get; set; }
}
public class MyModel : ModelBase
{
    public override String FirstName { get; set; }
    [Required]
    [Display(/*...*/)]
    public override String LastName { get; set; }
}