Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用WebResource.axd之类的工具从动态加载的程序集中提供嵌入式资源_C#_Asp.net_.net_Webforms - Fatal编程技术网

C# 如何使用WebResource.axd之类的工具从动态加载的程序集中提供嵌入式资源

C# 如何使用WebResource.axd之类的工具从动态加载的程序集中提供嵌入式资源,c#,asp.net,.net,webforms,C#,Asp.net,.net,Webforms,这里的背景是,我正在为CMS开发一个插件,该插件通过外部组件的反射加载。我想在我的程序集中嵌入一些javascript和CSS文件,这样我就可以在CMS中加载这些文件 通常,您会使用Page.ClientScript.GetWebResourceUrl(类型类型,字符串resourceName),结果URL指向WebResource.axd,其任务是找到正确的程序集,找到正确的资源并将其流回到客户端 如果程序集已作为应用程序的一部分加载(例如,它存在于您的bin文件夹中),则此操作可以正常工作,

这里的背景是,我正在为CMS开发一个插件,该插件通过外部组件的反射加载。我想在我的程序集中嵌入一些javascript和CSS文件,这样我就可以在CMS中加载这些文件

通常,您会使用
Page.ClientScript.GetWebResourceUrl(类型类型,字符串resourceName)
,结果URL指向
WebResource.axd
,其任务是找到正确的程序集,找到正确的资源并将其流回到客户端

如果程序集已作为应用程序的一部分加载(例如,它存在于您的bin文件夹中),则此操作可以正常工作,但在这种情况下,它将不起作用,因为我的程序集仅通过反射(例如,
assembly.Load()
)从外部目录加载。WebResource处理程序将无法找到程序集,因此此类型的请求将始终导致404

我的问题是,有没有一种被接受的、经过良好实践的方式来完成我在这里试图实现的目标,还是我必须自己动手?请记住,简单地将部件放入bin文件夹不是这里的选项

我尝试过谷歌,在这里搜索,我可以找到和我遇到的问题相同的人,但还没有解决方案


哦,我应该补充一点,我在.NET4.0上运行

您应该使用BuildManager的方法加载所有插件程序集

这可以在应用程序启动时通过使用来实现

然后,当您需要发现您的类型时,请使用