如何在aspx中获得cs文件的路径?
问题是:我在一个property.cs文件中创建了一个属性类,这个类用于EPiServer管理模块。因此,Server.MapPath()将返回执行文件的路径,它位于与我的代码完全不同的位置。我需要获得property.cs文件的路径(从property.cs文件内部),以便动态地设置一些指向css和js文件的相对路径。这是如何做到的呢?
因此,我希望能够在这个cs文件中包含.js和.css文件,所有文件都位于同一个目录中,但是cs文件是从EPiServer UI中访问的。
发布于 2010-09-15 09:40:12
我认为您应该将CSS、JS和其他静态文件作为嵌入式资源。
这将包括DLL中的文件,这使得部署更加容易。然后,您可以设置一个HTTP处理程序,它将为您提供嵌入式文件的内容-或者使用前面提到的RegisterScriptResource()方法。
通过嵌入这些文件,您不必知道任何文件路径。
发布于 2010-09-03 16:44:30
我强烈建议不要做你想做的事。您将构建一个脆弱的依赖文件,甚至不应该通过部署到您的项目。
如果您有依赖于javascript和css等资源的web类,则应该使用ClientScriptManager (或ajax应用程序的ScriptManager )将注册脚本文件放到页面上,并且脚本和css应该部署到它们自己的常规web目录中。
如果部署位置有问题,并且您正在创建某种可重用、可再分发的模块,那么我建议您将.js和.css文件作为WebResources嵌入到您的程序集中,并使用脚本管理器通过ClientScriptManager.RegisterScriptResource()。将脚本注册到页面
发布于 2010-09-03 15:54:36
ASP.NET是编译的,您不应该需要在运行时从源文件文件中读取设置,您应该从配置文件(*.config)中读取它们,如果它们需要是动态的,也可以通过各种方法在页面生命周期中注入这些设置。
https://stackoverflow.com/questions/3637403
复制相似问题