我一直致力于为SaaS产品开发基于MEF / Servicestack的框架。我正在将razor视图编译到在运行时使用MEF加载的外部模块中。我正在努力尝试将javascript资源嵌入到dll中,然后在加载视图时成功引用它们。有人有这个成功吗?
答案 0 :(得分:0)
Embedded Resources in Virtual File System wiki部分更详细地解释了嵌入式资源支持,您需要确保在Config.EmbeddedResourceSources
汇编列表或Config.EmbeddedResourceBaseTypes
中定义包含嵌入资源的汇编。类型列表,例如:
SetConfig(new HostConfig {
EmbeddedResourceSources = { typeof(TypeInDllWithEmbeddedResources).Assembly },
EmbeddedResourceBaseTypes = { typeof(TypeInDllWithEmbeddedResources) }
});
但通常无需配置,因为定义AppHost
的顶级程序集会自动预先注册,因为它通常也是同一个程序集维护网站资源,该程序集中的任何嵌入资源都可自动获得。例如。如果项目中/dir/file.js
有嵌入资源,则可以从安装ServiceStack的同一路径中获取,例如http://localhost:1337/dir/file.js
。
您只需要将VS.NET中“文件”属性面板中的构建操作设置为嵌入式资源,即可将文件设置为嵌入式资源,以便将其编译为您网站上的嵌入资源.dll。