我正在运行一个引用类库的MVC项目。类库包含 javascript 文件,其构建操作设置为“嵌入式资源”。
文件实际发生了什么?我似乎无法使用ResourceManager
获取它,因为我不知道它将资源放入的命名空间。
我的类库文件结构:
代码:
var t = this.GetType().Assembly;
var r = new System.Resources.ResourceManager("Namespace", t); //What is the namespace here?
var js = r.GetObject("Test.js");
答案 0 :(得分:1)
抱歉,我现在无法访问编译器,因此以下内容可能包含轻微错误。
var asm = typeof(MyClass).Assembly;
var stream = asm. GetManifestResourceStream("<rootnamespace>.Project.Web.Js.Test.js");
var reader = new StreamReader(stream);
String source = reader.ReadToEnd();
注意:
typeof(x)
代替GetType()
。如果从类型继承,后者将给出不正确的结果。Page.ClientScript
。 (我不确定这是否也适用于MVC,但会打赌它会)