【问题标题】:Accessing .net Web.Config in AngularJS project在 AngularJS 项目中访问 .net Web.Config
【发布时间】:2014-10-02 14:24:36
【问题描述】:

我在“空”类型的 .net 项目中有一个 AngularJS 项目,该项目托管在具有 .Net 4.0 框架的 IIS 上。我基本上不使用任何 .net dll,但由于项目有一个 web.config 文件,我添加了一些应用程序设置以在项目中使用。正在尝试设置开发/生产设置。

有没有办法从AngularJS访问.net web.config文件中的AppSettings,因为我没有使用MVC项目,我不能使用剃须刀(@System.Configuration.ConfigurationManager.AppSettings["url"] )。

还有其他方法吗?

谢谢

【问题讨论】:

  • 不,你不能,但在这种情况下,你想做什么?
  • 长话短说:没有。 web.config 在 .NET 环境之外受到保护。
  • 您不能不推测,您可能只想访问配置中的值。没有什么能阻止你编写某种服务来返回你想要的任何配置设置,然后你可以从 angular 调用这个服务。
  • 我在想,在服务器将 javascript 文件发送到客户端之前,将变量替换为 webConfig 变量:类似于 razor 与 MVC -> url: "@System.Configuration.ConfigurationManager. AppSettings["url"]" 如果有意义的话。

标签: c# asp.net .net angularjs web-config


【解决方案1】:

你没有。

Web.Config 文件是服务器端配置文件,AngularJS 是客户端框架。

您无法从浏览器访问它,因为出于安全原因,IIS 永远不会将其提供给客户端。

【讨论】:

  • 作为附录,您可以使用WebMethods (accessible through AJAX) 为 ASP 页面提供服务器,如果您选择该路由,这将是您唯一的依赖项。跨度>
  • @BradChristie 是的,您可以创建一些东西来读取 Web.Config 并将其发送给客户端,但这将是犯罪(至少)。获取配置部分的单个“页面”会更好。
【解决方案2】:

您可能希望公开一个 WebApi 控制器或 MVC 控制器,它返回代表 web.config 文件的 JSON...或至少包含您需要发送到客户端的 web.config 文件中的数据的 JSON 对象。 WebApi 控制器将通过配置管理器从 web.config 读取,转换为 JSON,然后发送到客户端。

我正在做类似的事情,我将我的 Angular 应用程序需要的服务端点存储在我的 web.config 中,但我想根据调试、开发、登台、生产等转换 .config 文件。

【讨论】:

    猜你喜欢
    • 2013-03-28
    • 2011-01-31
    • 1970-01-01
    • 2016-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-09
    • 1970-01-01
    相关资源
    最近更新 更多