我正在使用 MVC Web Api 服务器应用程序来生成客户端数据。此外,我想将 JavaScript、XAP (Silverlight) 和 XML 文件的集合发布到我的客户端应用程序。目前,我有一个项目结构,其中这些目录通过我的 .Net 实现代码(我不喜欢)混合在一起,因为客户端应用程序使用 URI 来请求这些文件无法更改。不过,我想将客户端数据与不同文件夹中的服务器应用程序实现分开。
因此,有没有办法将客户端数据存储在单独的文件夹中,例如
- /clientdata/JavaScript
- /clientdata/XAP
- /客户端数据/XML
- /客户数据/...
在我的项目中,同时仍然能够使用 URI 访问这些文件,例如
- /JavaScript
- /XAP/
- /XML/
哪些是客户端应用程序使用的 URL,并且不能轻易更改。
这是我的 Global.asax 的主要方法
AreaRegistration.RegisterAllAreas();
RouteTable.Routes.MapRoute(
name: "Default",
url: string.Empty,
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
namespaces: new[] { "TCMsimulator.Controllers" }
);
var config = new Microsoft.ApplicationServer.Http.HttpConfiguration();
RouteTable.Routes.MapServiceRoute<ResourcesService>("resources/", config);
RouteTable.Routes.MapServiceRoute<PublicResourcesService>("publicresources/",config);
RouteTable.Routes.MapServiceRoute<MonitorService>("monitor/", config);
有没有办法将文件夹重定向添加到路由表,以便将 URI 中的虚拟文件夹重定向到文件系统文件夹?可以在 Apache 中使用 ModRewrite 吗?这似乎是一个简单的问题,但我还没有在 Web Api 中找到解决方案。
提前致谢!