我可以在我的类文件SomeClass.cs中访问Settings.settings文件中定义的属性的值:
TestProject.Properties.Settings property = Properties.Settings.Default;
string myValue = property.someValue;
但是,我想从Default.aspx页面访问属性值。 我试过了:
<%
TestProject.Properties.Settings property = Properties.Settings.Default;
%>
它在属性右侧给出错误说:&#34;当前上下文中不存在名称属性。&#34;
是否可以从.aspx文件中访问属性项? 我能想到的唯一选择是创建一个只读取属性项的.cs类,并提供.aspx文件可以使用的getter。
答案 0 :(得分:3)
这是因为Settings
类被定义为internal
。
您可以在代码隐藏中使用类似的方法解决此问题:
...
public string Test { get; set; }
...
this.Test = WebApplication1.Properties.Settings.Default.Test;
...
回到你的aspx:
<%= this.Test %>
但我建议您使用web.config
存储设置内容。
答案 1 :(得分:0)
我最后只是专门为检索这些属性值而创建了一个类:
示例:
public class TestProperties
{
public static string getValue1()
{
return Properties.Settings.Default.Value1;
}
public static string getValue2()
{
return Properties.Settings.Default.Value2;
}
}
然后在.aspx文件中我检索这些值:
Value1: <%= TestProperties.Value1() %><br>
Value2: <%= TestProperties.Value2() %><br>
如果有人知道更简单的方法,我想就此发表一些意见。