Я перенес свое приложение MOSS 2007 (с настраиваемым рабочим процессом утверждения) на Sharepoint 2010. У меня был этот общий фрагмент кода для регистрации данных
private void WriteToLog(String logInfo)
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
File.AppendAllText(LOG_FILE_PATH + string.Format("{0:" + LOG_FILE_FORMAT + "}", DateTime.Now) + ".log", logInfo);
});
}
Я сделал обновление отсоединения базы данных, там выполняются рабочие процессы(В состоянии выполнения) из предыдущей среды, которая должна продолжиться в sharepoint 2010. Но, к сожалению, этого не произошло, моя активность репликатора вызвала ошибку.Я нашел это в журнале sharepoint
System.IO.IOException: устройство не готово.
в System.IO ._ Error.WinIOError (Int32 errorCode, String MaybeFullP ath)
в System.IO.FileStream.Init (строковое имя, режим FileMode, доступ к FileAccess, права Int32, логическое использование useRights, общий доступ к FileShare, буферный размер Int32, параметры FileOptions, SECURITY atTRIBUTES sec attrs, строковое msgP ath,Boolean bFromProxy)
в System.IO.FileStream..ctor (String p ath, режим FileMode, доступ к FileAccess, общий доступ к FileShare, параметры типа3232 bufferSize, опции FileOptions, String msgP ath, Boolean bFromProxy)
в System.IO.FileStream..ctor (String p ath, режим FileMode, доступ FileAccess, общий доступ к FileShare, размер буфера Int32, параметры FileOptions)
в System.IO.StreamWriter..ctor (String p ath, логическое добавление, кодировка кодировки, размер буфера Int32)
в System.IO.StreamWriter..ctor (String p ath, Boolean append, Кодировка кодирования)
в System.IO.File.AppendAllText (String p ath, Stringсодержимое, кодировка)
в xyz.Utils.MailNotific ations.DisplayClass1._0 ()
в Microsoft.SharePoint.SPSecurity.DisplayClass4._2 ()
в Microsoft.SharePoint.Utilities.SecurityContext.RunAsProcess (CodeToRunElev изменил secureCode)
в Microsoft.SharePoint.SPSecurity.RunWithElev atedPrivileges (WaitCallback secureCode, параметр объекта)
в Microsoft.SharePoint.SPSecurity.RunWithElev atedPrivileges (CodeToRunElev за исключением 10 защищенных копий)..WriteToLog (String logInfo)
в xyz.Utils.MailNotific ations.SPNotifiction (применение SPWeb, строковый субъект, одобрение строк, String htmlBody)
в xyz.WF.Approval.ApprovalWorkFlow.logError_ExenderEventArgs e)
в System.Workflow.ComponentModel.Activity.RaiseEvent (DependencyProperty dependencyEvent, отправитель объекта, EventArgs e)
в System.Workflow.Activities.CodeActivity.Execute (ActivityExecutionContext executeContext)
в системе.ComponentModel.ActivityExecutor 1.Execute(T activity, ActivityExecutionContext executionContext)<br>
at System.Workflow.ComponentModel.ActivityExecutor
1.Execute (Activity Activity, ActivityExecutionContext executeContext)
в System.Workflow.ComponentModel.ActivityExecutorOper ation.Run (IWorkflowCoreRuntime workflowCoreRuntime)
в System.Workflow.Runtime.undu
Короче говоря, это, похоже, исключение ввода-вывода.Я поделился расположением папки журнала, права доступа к файлу исключены, приложение работает нормально, когда запускается новый рабочий процесс.