【发布时间】:2017-08-24 23:46:09
【问题描述】:
我在 ASP.NET MVC(EF6) 数据库第一个项目中工作,我的模型文件夹中有一个自动生成的部分类,如下所示:
public partial class StdModel
{
public string StdName { get; set; }
public int StdNr { get; set; }
}
因为这是一个自动生成的类,每次我刷新我的模型时(无论出于何种原因),对这个类所做的任何更改都会被删除,所以我扩展了这个类,我想提供一些从查看这个新的部分类中的一些属性(实体),例如删除单词之间的空格。
查看:
<div class="form-group">
@Html.LabelFor(model => model.StdName , htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.StdName , new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.StdName , "", new { @class = "text-danger" })
</div>
</div>
但是,因为它是一个部分类,所以我不能在这个新的部分类中声明相同的属性,并且我已经尝试了不同的方法,例如通过构造函数和使用初始化程序设置属性来实现这一点,但没有成功,有什么方法可以在进入数据库之前设置属性并根据需要进行更改,如下所示:
public partial class StdModel <--- PartialClasses.cs
{
private string stdName;
public string StdName
{
get { return stdName; }
set { stdName = value.ToUpper(); }
}
private int stdNr;
public int StdNr
{
get { return stdNr; }
set {stdNr = Regex.Replace(value, @"\s+", ""); }
}
}
提前致谢。
【问题讨论】:
标签: c# asp.net-mvc properties entity-framework-6 partial-classes