我有投入、类型文字、内容,正在通过MVC3验证客户,验证这些要素,而我则希望在员额出现时没有向服务器发送输入值。
我有两个实体:一个“File”实体和一个“Company”实体,共有1到1个关系。 档案实体有一家外国钥匙公司。
因此,如果你看一看他们的名字和背后特性:档案.Company.Code或 文件:Company_Code。
我想避免将投入价值退回服务器的原因是,当请求送达服务器时,我只想把价值约束给我的“零”实体。 由于它也获得了“File.Company.Code”的价值,因此,它也正在对价值与我想要避免的File.Company.Code公司目标挂钩。
The input element is :
<input name="File.Company.Code" id="File_Company_Code" type="text" data-val-required="Se requiere un código de cliente." data-val="true" value=""/>
And the span element:
<span class="field-validation-valid" data-valmsg-replace="true" data-valmsg-for=" File.Company.Code "/>
I’ve tried:
-Changing the input name and span data-valmsg-for attributes using jquery. But I think that after doing this I may need to rebind the validators??
Any suggestions? (I hope to have explained myself clearly if not let me know.)
Thanks
UPDATE 1 **
Thanks to AFinkelstein sugestion which put me on the right track I updated my domain model such as:
public class FileModel {
public File File {
get {
return this.file;
}
}
*** ADDED this which helped me solve the problem ***
public Company Company {
get {
return this.file.Company;
}
}
}
我认为,不要这样做:
@Html.TextboxFor(model => model.File.Company.Code)
@Html.ValidationMessageFor(model => model.File.Company.Code)
我现在:
@Html.TextboxFor(model => model.Company.Code)
@Html.ValidationMessageFor(model => model.Company.Code)
这样,产生的名称和特征就具有价值:公司。 《刑法》和《刑法》公司(Code)在前列“File”。 当我接收服务器上的这个职位并将这些数值与文档标的挂钩时:
FileModel fileModel = new FileModel();
try {
TryUpdateModel(fileModel.File, "File");
因为它没有获得“File.Company”的价值。 《法典》试图将文件“Company”物体初步化,这给我带来了其他问题。