为了避免路径相关的样式表导入漏洞,我应该使用完整路径在我的页面上附加 css 文件,例如
<link href="http://mywebsite/style.css" type="text/css" rel="stylesheet" />
Run Code Online (Sandbox Code Playgroud)
代替
<link href="style.css" type="text/css" rel="stylesheet" />
Run Code Online (Sandbox Code Playgroud)
你怎么认为?
我尝试使用mage.exe(位于“ C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.1A \ bin \ NETFX 4.5.1 Tools \ mage.exe”中)从应用程序生成clickonce文件针对.Net 4.5。一切正常,但在* .application文件中有一个“ compatibleFrameworks”部分:
<compatibleFrameworks xmlns="urn:schemas-microsoft-com:clickonce.v2">
<framework targetVersion="4.0" profile="Client" supportedRuntime="4.0.30319" />
<framework targetVersion="4.0" profile="Full" supportedRuntime="4.0.30319" />
</compatibleFrameworks>
Run Code Online (Sandbox Code Playgroud)
我不知道为什么框架设置为4.0。我想在生成的文件中最终获得.Net 4.5,所以像这样:
<compatibleFrameworks xmlns="urn:schemas-microsoft-com:clickonce.v2">
<framework targetVersion="4.5" profile="Full" supportedRuntime="4.0.30319" />
</compatibleFrameworks>
Run Code Online (Sandbox Code Playgroud)
我应该改变什么?为什么merge.exe在兼容框架上没有设置正确的版本?我不想手动修改。
我想知道为什么这段代码是正确的,并且可以向私有NameList添加值.我认为私有字段无法从类实例中访问.
class Program
{
static void Main(string[] args)
{
Test test = new Test();
test.NameList.AddRange(new[] { "Test" }); // why OK?
test.Name = "fake"; // error, OK!
}
}
class Test
{
public string Name { get; private set; }
public List<string> NameList { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)
谢谢.