我在尝试填充 HttpWebRequest 时遇到问题。如果您只是添加系统程序集的伪造程序集,它不会立即工作。但是,如果您更改 fakes 文件并添加它可以工作的特定命名空间。
<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/">
<Assembly Name="System" Version="4.0.0.0"/>
<ShimGeneration>
<Clear/>
<Add FullName="System.Net.WebRequest!"/>
<Add FullName="System.Net.HttpWebRequest!"/>
<Add FullName="System.Net.HttpWebResponse!"/>
</ShimGeneration>
</Fakes>
问题是这只适用于本地。尝试解析 ShimHttpWebRequest 时,Team Foundation Server 上的自动构建会引发错误。看起来自动构建忽略了假文件,因为当我在构建服务器上使用 VS 手动构建它时,它可以工作。