我有一个通过其构造函数填充的 C# 模型。我想将此对象放在我的 _Layout.cshtml 中,以便我的 Javascript 可以将其用作设置。
这是我的模型的样子:
public class SomeConfig
{
public string PropertyA { get; set; }
public string PropertyB { get; set; }
public string PropertyC { get; set; }
public SomeConfig()
{
PropertyA = SystemSettings.getSetting(KEYA);
PropertyB = SystemSettings.getSetting(KEYB);
PropertyC = SystemSettings.getSetting(KEYC);
}
}
我想在 _Layout.cshtml 中初始化并输出它,这样我的所有其他视图都可以使用它。到目前为止,我只能弄清楚如何在 _Layout.cshtml 中手动执行此操作,如下所示:
<script type="text/javascript">
MyNamespace.someConfig = {
PropertyA: @SystemSettings.getSetting(KEYA),
PropertyB: @SystemSettings.getSetting(KEYB),
PropertyC: @SystemSettings.getSetting(KEYC)
}
</script>
这太可怕了,因为每次扩展 SomeConfig.cs 模型时,我都必须记住在客户端手动扩展它。有没有办法在 _Layout.cshtml 中对其进行初始化,以便动态创建 Javascript 对象?