Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.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# 查看模型布线困难_C#_.net_Asp.net Mvc 2_View_Model - Fatal编程技术网

C# 查看模型布线困难

C# 查看模型布线困难,c#,.net,asp.net-mvc-2,view,model,C#,.net,Asp.net Mvc 2,View,Model,因此,我的视图中的字段连接到我的basemodel类,如下所示: <%= Html.TextBox("FixedRateOverride", Model.FixedRateOverride.HasValue ? Model.FixedRateOverride.Value.ToString(Chatham.Web.Data.Constants.Format.FiveDecimalPlacesFormatString) : "", new { @class = "economicTextBox

因此,我的视图中的字段连接到我的
base
model类,如下所示:

<%= Html.TextBox("FixedRateOverride", Model.FixedRateOverride.HasValue ? Model.FixedRateOverride.Value.ToString(Chatham.Web.Data.Constants.Format.FiveDecimalPlacesFormatString) : "", new { @class = "economicTextBox", propertyName = "FixedRateOverride", onchange = "UpdateField(this);" })%>

我们现在要做的是消除所有存储在模型
base
上的
重写
类型字段,并将它们直接连接到从该模型
base
继承的
类上的实际字段(有3种类型)

视图不能从其中任何一个继承,因为进入视图时,它可能是3个视图中的任何一个,因此它必须从
base
类继承


当视图仅从
基础继承时,我如何将这些字段关联到
模型的特定类型的字段?

我找到了一种方法,但我怀疑这是最有效或推荐的方法,尽管可能是这样。我将嵌入式控件中对
模型的调用更改为仅将其转换为子模型,如下所示:

((SubModel)Model)

似乎有效,但正如我所说,看起来很奇怪,可能有更好的方法,但这是我目前的工作。

这对我来说非常好。这可能不完全符合犹太教,但那又怎样?铸造就是为了解决这样的问题。与原始代码相比,这无疑是一个巨大的改进。注意:建议您编辑下面的所有文本,并将其作为答案发布,而不是将其放入问题中。是的,这正是我所想的。如果你不能像这样进行简单的强制转换来解决这些问题,那么将所有东西都设计得如此干净又有什么意义呢。