2011-10-05 62 views
3

我從SQL Server Agent job.C#的XMLSerializer temp目錄的問題

運行的過程,我創建了一個網絡帳戶調用的C#控制檯應用程序。

本來我有錯誤,因爲串行WS試圖寫入到另一個用戶的臨時目錄(該帳戶爲SQL Server代理服務本身),但我固定的,使用的配置設置

<system.xml.serialization> 
     <xmlSerializer tempFilesLocation="c:\\temp"/> 
</system.xml.serialization> 

但是現在我得到的錯誤"Unable to generate a temporary class (result=1).

error CS0016: Could not write to output file 'c:\temp\2euqs4ou.dll' -- 'Access is denied. ' " 

這兩個帳戶具有完全控制權c:\temp.我難倒。

我一直在搜索這一整天沒有成功。我拒絕讓服務帳戶成爲機器管理員,但如果必須的話,我會這樣做。

+0

是否有可能有你的EXE運行2個實例,並都試圖同時訪問該文件? –

+0

您如何從SQLServer代理作業中將Consol應用程序作爲「我關心的網絡帳戶」運行? – user957902

回答

0

爲什麼不預先生成帶有sgen.exe的XmlSerializer程序集?

sgen.exe /assembly:MyFile.dll