private void Apply_Click(object sender, EventArgs e) { var view = dataGridView1.SelectedRows[0].DataBoundItem as DataRowView; if (view != null) { var guid = (Guid)view.Row["GUID"]; IPersistentStore store = PersistentStoreRegistry.GetDefaultStore(); using (IUpdateContext ctx = store.OpenUpdateContext(UpdateContextSyncMode.Flush)) { var studyBroker = ctx.GetBroker <IStudyEntityBroker>(); var key = new ServerEntityKey("Study", guid); Model.Study study = studyBroker.Load(key); var storageBroker = ctx.GetBroker <IStudyStorageEntityBroker>(); var parms = new StudyStorageSelectCriteria(); parms.ServerPartitionKey.EqualTo(study.ServerPartitionKey); parms.StudyInstanceUid.EqualTo(study.StudyInstanceUid); Model.StudyStorage storage = storageBroker.Find(parms)[0]; var workQueueBroker = ctx.GetBroker <IWorkQueueEntityBroker>(); var columns = new WorkQueueUpdateColumns { ServerPartitionKey = study.ServerPartitionKey, StudyStorageKey = storage.GetKey(), ExpirationTime = DateTime.Now.AddHours(1), ScheduledTime = DateTime.Now, InsertTime = DateTime.Now, WorkQueuePriorityEnum = Model.WorkQueuePriorityEnum.Medium, WorkQueueStatusEnum = Model.WorkQueueStatusEnum.Pending, WorkQueueTypeEnum = Model.WorkQueueTypeEnum.WebEditStudy }; var doc = new XmlDocument(); doc.Load(new StringReader(textBox1.Text)); columns.Data = doc; workQueueBroker.Insert(columns); ctx.Commit(); } } }
private void LoadSeriesDetails() { if (!String.IsNullOrEmpty(_serverae) && !String.IsNullOrEmpty(_studyInstanceUid) && !String.IsNullOrEmpty(_seriesInstanceUid)) { StudyAdaptor studyAdaptor = new StudyAdaptor(); SeriesSearchAdaptor seriesAdaptor = new SeriesSearchAdaptor(); ServerPartitionDataAdapter adaptor = new ServerPartitionDataAdapter(); ServerPartitionSelectCriteria criteria = new ServerPartitionSelectCriteria(); criteria.AeTitle.EqualTo(_serverae); Model.ServerPartition partition = adaptor.GetFirst(criteria); if (partition != null) { Partition = partition; StudySelectCriteria studyCriteria = new StudySelectCriteria(); studyCriteria.StudyInstanceUid.EqualTo(_studyInstanceUid); studyCriteria.ServerPartitionKey.EqualTo(Partition.GetKey()); Model.Study study = studyAdaptor.GetFirst(studyCriteria); if (study != null) { // there should be only one study _study = study; SeriesSelectCriteria seriesCriteria = new SeriesSelectCriteria(); seriesCriteria.SeriesInstanceUid.EqualTo(_seriesInstanceUid); Series series = seriesAdaptor.GetFirst(seriesCriteria); if (series != null) { _series = series; } } } } if (_study!=null && _series != null) { SeriesDetailsPanel1.Study = _study; SeriesDetailsPanel1.Series = _series; } DataBind(); }