我是Entity Framework的新手。当我尝试使用@ HTML.DisplayFor进行显示时。它显示额外的标记,在HTML页面中显示为空白。
示例:“测试文字”显示为<Test> <td> </Text>
示例代码如下所示。
模型
public class ThirdParty
{
public string ProductId { get; set; }
public List<string> Options { get; set; }
public List<string> InputVariables { get; set; }
}
public class ValidationMessage
{
public string IsRequired { get; set; }
public List<string> InputVariables { get; set; }
}
public class LicenseBase
{
public string Name { get; set; }
public string Category { get; set; }
public List<BaseModule> BaseModules { get; set; }
public List<ThirdParty> ThirdParty { get; set; }
public List<string> InputVariables { get; set; }
public List<ValidationMessage> ValidationMessages { get; set; }
public List<JPT> JPTProducts { get; set; }
}
public class BaseModule
{
public string Category { get; set; }
public string Name { get; set; }
}
public class Product
{
public LicenseBase License { get; set; }
public List<LicenseBase> SubLicenses {get;set;}
}
当我尝试在index.chtml
中显示BaseModule时出现问题答案 0 :(得分:3)
@Html.DisplayFor()
将根据属性类型呈现标记模板,该类型说明了不需要的标记的来源。
来自MSDN:
返回由Expression表达式表示的对象中每个属性的HTML标记。
您可能想要使用@Html.Raw()
之类的内容