iis 在模块窗口中显示dll的“跳过加载”的符号状态?

kyvafyod  于 2023-05-23  发布在  其他
关注(0)|答案(1)|浏览(161)

我最近升级了一些解决方案到Visual Studio 2013。一切正常,除了一个现在生成:
未加载模块“name”的符号。
错误,每次我运行它。
当我在模块调试窗口中查看时,我可以看到对dll的影响(它是一个Web服务dll)

Name           Path                       Optimised    User Code    Symbol Status
dllName.dll    Tempoary ASP.Net...etc.    Yes          No           Skipped Loading...

如果我查看\bin,我会看到dll,它对应的是.pdb文件。
检查项目的构建菜单,我可以看到Debug Info: full
长话短说,在我看来一切正常,除了它没有加载任何符号。
知道我错过了什么吗

更新

看起来如果我通过IIS Express运行我的解决方案,问题就消失了。但是运行IIS(8)我仍然有这个问题。

lqfhib0f

lqfhib0f1#

在痛苦地比较了两个项目文件,一个工作,一个没有我注意到,工作的项目有:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
  <DebugSymbols>true</DebugSymbols>
  <DebugType>full</DebugType>

  <!-- This works -->
     <Optimize>false</Optimize>
  <!----------------------->

  <OutputPath>bin\</OutputPath>
  <DefineConstants>DEBUG;TRACE</DefineConstants>
  <ErrorReport>prompt</ErrorReport>
  <WarningLevel>4</WarningLevel>
</PropertyGroup>

就像我的那个

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
  <DebugSymbols>true</DebugSymbols>
  <DebugType>full</DebugType>

  <!-- This DOESN'T -->
     <Optimize>true</Optimize>
  <!----------------------->

  <OutputPath>bin\</OutputPath>
  <DefineConstants>DEBUG;TRACE</DefineConstants>
  <ErrorReport>prompt</ErrorReport>
  <WarningLevel>4</WarningLevel>

</PropertyGroup>

通过将<Optimize>属性设置为false,所有问题都消失了。
answer also seems relevant作为.csproj.user文件可以不同步,我删除了它。

相关问题