只是一个想法,
OnStart
StudyLoaderArgs
Init(ApplicationEntity)
方法并按如下方式调用它:
Init(myStudyArgs);
而且
protected override int OnStart(StudyLoaderArgs studyLoaderArgs)
{
Init(StudyLoaderArgs.Server as ApplicationEntity);
}
--编辑--
-
OnStart()
Init()
void Init(应用程序性ae)
{
AuditedInstances loadedInstances=新的AuditedInstances();
尝试
{
XmlDocument doc = RetrieveHeaderXml(studyLoaderArgs);
StudyXml studyXml = new StudyXml();
studyXml.SetMemento(doc);
_instances = GetInstances(studyXml).GetEnumerator();
loadedInstances.AddInstance(studyXml.PatientId, studyXml.PatientsName, studyXml.StudyInstanceUid);
return studyXml.NumberOfStudyRelatedInstances;
}
finally
{
AuditHelper.LogOpenStudies(new string[] { ae.AETitle }, loadedInstances, EventSource.CurrentUser, result);
}
-
呼叫
Init()
受保护的重写int OnStart(studyLoadArgs studyLoadArgs)
ApplicationEntity ae=studyLoadArgs.Server作为ApplicationEntity;
_ae=ae;
}
-
OnStart()
是一个事件,将在服务(假设它是服务)启动时调用。更具体地说,事件不是在那里被调用的,而是作为某件事情发生的通知而引发的事件;我们所做的只是处理事件;i、 将一个方法注册为该事件的处理程序,然后每次引发该事件时都会调用该方法。
Init()
而不是
Init()
OnStart(EventArgs.Empty);
我不知道这是否回答了你的问题,但我的脑袋上方!(0: