Dot*_*Net 5 c# asp.net resx resgen
我编写自己的服务器端控件并使用在.resx文件中存储的图像.在控制台应用程序中,此代码工作正常:
ResXResourceReader rsxr = new ResXResourceReader("Resource1.resx");
foreach (DictionaryEntry d in rsxr)
{
Console.WriteLine(d.Key.ToString() + ":\t" + d.Value.ToString());
}
rsxr.Close();
Run Code Online (Sandbox Code Playgroud)
但在这里
protected override void RenderContents(HtmlTextWriter output)
{
ResXResourceReader rsxr = new ResXResourceReader("Resource1.resx");
base.RenderContents(output);
foreach (DictionaryEntry d in rsxr)
{
output.Write(d.Key.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
我感到很恐怖:
找不到文件'C:\ Program Files\Common Files\Microsoft Shared\DevServer\10.0\Resource1.resx'
我尝试使用ResourceManager但它需要.resource文件.我无法访问resgen工具(命令promt不理解[resgen]命令)并安装它(发生错误).
第一:为什么我不能读.resx?
第二:如何安装resgen工具?
谢谢.
将资源文件存储App_GlobalResources在应用程序根目录的文件夹下或App_LocalResources与用户控制文件同名的文件夹中被认为是一种很好的做法。因此,例如用户用户控件是本地资源文件夹中的 uc.ascx 文件应该是 uc.ascx.resx。这样就更容易维护,并且 ASP.NET 会自动检测到它。
现在你的答案:
第一个问题:直接
使用Server.MapPath("~/")指向物理位置的 web.config 。如果您想使用 Controls 文件夹中的资源文件,您必须编写Server.MapPath("~/Controls/Resource1.resx")以获取路径。
不确定您想使用 resgen 工具做什么?当您编译应用程序时,资源文件也会被编译。选择您的资源文件并单击F4,它将显示您的构建操作,在构建操作中选择资源,您的资源文件将包含在程序集中。
您可以查看这篇文章以获取更多信息:How to use image resources in asp.net website?
| 归档时间: |
|
| 查看次数: |
2117 次 |
| 最近记录: |