2014-05-23 3 views
0

웹을 통해 실행할 수있는 파이프 라인을 만들고 있습니다. 이 파이프 라인에서 사용되는 프로그램에는 일부 데이터 파일이 필요하며 파이프 할 수 없습니다. 먼저 데이터베이스에서 데이터를 가져 와서 파일에 쓰고 프로그램을 실행합니다. 파이프 라인 코드는 App_Code 폴더에 저장되므로 데이터 파일을이 폴더에 저장하려고합니다. App_Code 권한을 (재귀 적으로) rwxrwxrwx로 설정했습니다. 파일에 쓸 때이 오류가 발생합니다 :파일을 App_Code에 쓸 수 없습니다.

Failed to acquire lock after 
Description: HTTP 500. Error processing request. 
Stack Trace: 
System.ApplicationException: Failed to acquire lock after 
    at System.Web.SessionState.SessionInProcHandler.ResetItemTimeout 
(System.Web.HttpContext context, System.String id) [0x00000] in <filename unknown>:0 

명령 줄을 통해 파이프 라인을 실행할 때이 오류가 발생하지 않습니다. 이는 각 실행에 사용되는 사용자가 원인 일 수 있습니다. 그러나 권한 설정은 내 의견으로는이 문제를 방지해야합니다.

답변

3

코드 그대로이므로 App_Code 폴더에 아무 것도 쓰지 않아야합니다. 대신 App_Data 폴더를 사용해야합니다.

AppDomain.CurrentDomain.GetData("DataDirectory").ToString() 
+0

허용을하지만, 나는 그것이 오류의 원인을 설명 생각하지 않습니다 :

당신은 사용 App_Data 폴더의 경로를 얻을 수 있습니다. – Benjamin

+0

네 말이 맞아, 내가 더 설명해야만 해. 특별한 .net 폴더에서 파일 작업을 시도하기 때문에 100 % 확실하지 않습니다. 현재 Add_Data에서 사용하고 있습니까? –

+0

예, 그렇습니다! 감사합니다 – Benjamin

관련 문제