我有一个自定义设置类,如下所示。
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.7.0.0")]
public sealed partial class CustomSettings : global::System.Configuration.ApplicationSettingsBase
{
private static CustomSettings defaultInstance2 = ((CustomSettings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new CustomSettings())));
public static CustomSettings Default2
{
get
{
return defaultInstance2;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
public List<TextReplacementRule> TextReplacementRules
{
get { return (List<TextReplacementRule>)this["TextReplacementRules"]; }
set { this["TextReplacementRules"] = value; }
}
[Serializable]
public class TextReplacementRule
{
public string Name { get; set; }
public string Channel { get; set; }
public string ReplaceTo { get; set; }
public string ReplaceWith { get; set; }
}
}
配置设置如下。
<AccessingConfigToUI.Properties.CustomSettings>
<setting name="TextReplacementRules" serializeAs="Xml" >
<value>
<ArrayOfTextReplacementRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<TextReplacementRule>
<Name>Rule1</Name>
<Channel>EMAIL</Channel>
<ReplaceTo>VAL1</ReplaceTo>
<ReplaceWith>VAL2</ReplaceWith>
</TextReplacementRule>
<TextReplacementRule>
<Name>Rule2</Name>
<Channel>EMAIL</Channel>
<ReplaceTo>VAL1</ReplaceTo>
<ReplaceWith>VAL2</ReplaceWith>
</TextReplacementRule>
</ArrayOfTextReplacementRule>
</value>
</setting>
</AccessingConfigToUI.Properties.CustomSettings>
我正在尝试使用下面的代码访问 javascript 中的配置。
<script type="text/javascript">
var configSetting = "@(AccessingConfigToUI.Properties.CustomSettings.Default2.TextReplacementRules)";
</script>
在调试时,我确实在 this["TextReplacementRules"] 中看到了 2 条记录,但是 JS 变量 - "configSetting" 在页面呈现后具有以下值。
System.Collections.Generic.List`1[AccessingConfigToUI.Properties.CustomSettings+TextReplacementRule]"
似乎是序列化问题。我需要查看配置文件中设置的值。(2 条记录)。
请帮忙。