C# Web 服务:获取产品名称程序集和执行它的机器名称
Posted
技术标签:
【中文标题】C# Web 服务:获取产品名称程序集和执行它的机器名称【英文标题】:C# Web Service: Getting product name assembly and machine name where it is executed 【发布时间】:2018-04-16 01:41:30 【问题描述】:我有一个用 C# 编写的 Web 服务,它发布到 IIS 上的服务器。
在此 Web 服务中,我使用一些参数构建了一个连接字符串。
有两个,“应用程序名称”和“工作站 ID”,我想用组装产品名称和执行 Web 服务的机器名称来设置它们。所以我这样做如下:
要设置“应用程序名称”,我使用 System.Windows.Forms.Application.ProductName 值 要设置“工作站 ID”,我使用 System.Environment.MachineName 值在 Win 表单应用程序中,我使用这些值,但在谈论 Web 服务时它们是否正确?我的意思是,这些值是否在 Web 服务中以不同的方式提取?
另外为了避免使用 System.Windows.Forms 命名空间,有没有其他方法来获取 web 服务应用程序名称?
应用程序名称是指当您转到项目属性 => 应用程序 => 装配信息按钮 => 产品名称字段时从 Visual Studio IDE 出现的产品名称。
【问题讨论】:
“去做” - 做什么,究竟是什么?如果您执行您显示的语句,您将从服务器而不是客户端获取值。 @CodeCaster 我想从 IIS 上发布 Web 服务的服务器获取值。 【参考方案1】:您可以将值存储在 Web 服务的 app.config 文件中。
Hi, You can store the values in app.config file of Web service.
<configuration>
<appSettings>
<add key="ApplicationName" value="ValueApplicationName" />
<add key="WorkstationID" value="ValueWorkstationID" />
</appSettings>
</configuration>
When you open the application that connects with web service, The web service can pass this value to the application. Use System.Configuration to read value from config file:
string AppName = ConfigurationManager.AppSettings["ApplicationName"];
【讨论】:
我想在运行时获取关于 Web 服务的程序集的产品名称。以上是关于C# Web 服务:获取产品名称程序集和执行它的机器名称的主要内容,如果未能解决你的问题,请参考以下文章
c# foreach 没有在循环中获取下一个 XElement 名称
Unity3DUnity 脚本 ③ ( C# 脚本的执行入口函数 | 获取当前游戏物体及物体名称 | 获取游戏物体的 Transform 组件数据 | UnityEngine 命名空间简介 )