2

我们有一个内部错误报告系统(在我们的函数 dll 中),我们发送的信息之一是导致它的应用程序的名称。

当前代码:

string applicationname= Assembly.GetCallingAssembly().GetName().Name;

问题是当错误是从我们的一个网站发送的,因为它发送了诸如“App_Code.6p_c415d”之类的应用程序名称。

一种可能的方法是确定应用程序是可执行文件还是网站(我们如何做到这一点?),如果是网站,则获取包含它的文件夹......

但是,如果您有更好的方法,我们对任何想法都持开放态度^^

4

2 回答 2

1

您可以使用 AppSettings 中的密钥来识别您的应用程序。

于 2012-11-07T20:27:54.860 回答
0

我们最终创建了以下函数,它工作正常:

public static string getApplicationName()
{
    return string.IsNullOrEmpty(HttpRuntime.AppDomainAppId)?
        Assembly.GetEntryAssembly().GetName().Name : 
        new DirectoryInfo(HttpContext.Current.Server.MapPath("")).Name;
}
于 2012-11-08T08:46:12.103 回答