小编Chr*_* D.的帖子

CS1567 XmlSerialization错误临时文件进程间的冲突?

我的问题是.NET框架生成的支持XmlSerialization的临时文件.

这是提示我提出问题的背景.

我部署的软件部署在4个环境中,所有这些都是Windows 2003服务器.

所有4个环境中的.net运行时都是相同的服务包.C:\ windows\temp目录的所有环境中的用户权限都已分配,以允许这些计算机上的NETWORK SERVICE和ASPNET用户完全访问.

软件组件包括以下内容(组件已作为预先存在的设计的一部分分离):

  1. .NET 1.1 Web应用程序 - (Web应用程序1).
  2. .NET 1.1 Web服务应用程序 - (Web服务2)
  3. .NET 1.1 Windows服务 - (Windows服务3)
  4. .NET 2.0应用程序 - (Web应用程序4)

每个Web和Web服务应用程序都已在IIS中分配了不同的应用程序池.

Web服务2由上面列出的其他组件使用.Web应用程序1,Windows Service 3都具有相同的.net1.1 dll客户端到Web服务2. Web应用程序4具有.net2.0版本的Web服务2客户端.

包含Web服务绑定的客户端DLL在所有应用程序中具有相同的"命名空间".定义Web服务2内的Web服务绑定的服务器DLL也具有相同的命名空间.

.NET 2.0 Web应用程序已配置为在生成文件时使用不同的临时目录路径,方法是在web.config文件中指定它:

<xmlSerializer tempFilesLocation ="c:\newTemp"/>

在一个环境中,我间歇性地看到以下错误:

无法生成临时类(result = 1).错误CS1567:生成Win32资源时出错:进程无法访问该文件,因为它正被另一个进程使用.

Stack =    at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, CompilerParameters parameters, Evidence evidence)
   at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, CompilerParameters parameters, Assembly assembly, Hashtable assemblies)
   at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence …
Run Code Online (Sandbox Code Playgroud)

c# xml-serialization

5
推荐指数
0
解决办法
2426
查看次数

标签 统计

c# ×1

xml-serialization ×1