本文整理汇总了C#中UnitOfWork.GetObjects方法的典型用法代码示例。如果您正苦于以下问题:C# UnitOfWork.GetObjects方法的具体用法?C# UnitOfWork.GetObjects怎么用?C# UnitOfWork.GetObjects使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnitOfWork
的用法示例。
在下文中一共展示了UnitOfWork.GetObjects方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SetupDataStore
void SetupDataStore(DataSetDataStore dataSetDataStore, UnitOfWork unitOfWork, ITypeInfo typeInfo) {
var classType = FindMappedTypeInfo(typeInfo.Name).Type;
dataSetDataStore.ObjectClassInfo = unitOfWork.Dictionary.GetClassInfo(classType);
dataSetDataStore.DynamicTypeInfo = typeInfo;
Activator.CreateInstance(classType, unitOfWork);
unitOfWork.CommitChanges();
unitOfWork.GetObjects(dataSetDataStore.ObjectClassInfo, null, new SortingCollection(), 0, 0, false, true);
}
示例2: GetDictProdOrderQty
private Dictionary<string, float> GetDictProdOrderQty(UnitOfWork uow)
{
string key = "";
Dictionary<string, float> dictProdOrderQty = new Dictionary<string, float>();
#region Get Waiting Qty
XPCollection<ProdOrder> prodOrders = new XPCollection<ProdOrder>(uow, CriteriaOperator.Parse(string.Format("OrderStatus = '{0}' || OrderStatus = '{1}'", ProdOrder.ProdOrderStatus.Waiting, ProdOrder.ProdOrderStatus.Calculated)));
foreach (ProdOrder prodOrder in prodOrders)
{
ProdRoute pRoute = prodOrder.GetFirstProdRoute();
if (pRoute != null)
{
key = pRoute.WorkCenter.WorkCenterNo + "-" + prodOrder.Item.ItemNo + "-" + ProdOrder.ProdOrderStatus.Waiting;
if (dictProdOrderQty.ContainsKey(key))
dictProdOrderQty[key] = dictProdOrderQty[key] + prodOrder.NeedQty;
else
dictProdOrderQty.Add(key, prodOrder.NeedQty);
}
}
#endregion
#region Get Active Qty
XPClassInfo prodRouteClass;
CriteriaOperator criteria;
SortingCollection sortProps;
prodRouteClass = uow.GetClassInfo(typeof(ProdRoute));
criteria = CriteriaOperator.Parse(string.Format("ProdOrder.OrderStatus = '{0}'", ProdOrder.ProdOrderStatus.Active));
sortProps = new SortingCollection(null);
ICollection prodRoutes = uow.GetObjects(prodRouteClass, criteria, sortProps, int.MaxValue, false, true);
foreach (ProdRoute prodRoute in prodRoutes)
{
key = prodRoute.WorkCenter.WorkCenterNo + "-" + prodRoute.Item.ItemNo + "-" + ProdOrder.ProdOrderStatus.Active;
if (dictProdOrderQty.ContainsKey(key))
dictProdOrderQty[key] = dictProdOrderQty[key] + prodRoute.WipQty;
else
dictProdOrderQty.Add(key, prodRoute.WipQty);
}
#endregion
return dictProdOrderQty;
}
示例3: TransferFile
/// <summary>
/// Метод принимает поток из модулей IDynamicModule
/// </summary>
/// <param name="context">Идентификатор обследования связанного с файлом</param>
/// <param name="fileName">Имя файла</param>
/// <param name="dataStream">Файловый поток</param>
/// <param name="initialSize">Размер файла</param>
public void TransferFile(Guid context, String fileName, Stream dataStream, long initialSize)
{
// Получаем объект для работы с данными БД
UnitOfWork uow = new UnitOfWork((this.Application.CreateObjectSpace() as XPObjectSpace).Session.DataLayer);
if (uow == null)
throw new Exception("Error occurred while creating UnitOfWork object.");
// Находим обследование по ИД
IExamination examination = uow.GetObjectByKey<IExamination>(context);
if (examination == null)
{
DevExpress.Persistent.Base.Tracing.Tracer.LogError("TransferFile({0}, {1}, {2}, {3}) Examination [id={0}] is not found in the database",
context, fileName, "dataStream", initialSize);
return;
//throw new Exception("The examination is not found in the database.");
}
if (String.IsNullOrEmpty(fileName) == true || initialSize <= 0)
throw new Exception("Invalid file transfer params.");
//...
//XtraMessageBox.Show(String.Format("TransferFile: {0}, {1}", context, fileName));
Guid owner = (examination as DevExpress.ExpressApp.DC.DCBaseObject).Oid;
CriteriaOperator criteria = uow.ParseCriteria(String.Format("[OwnerId]= '{0}'", owner));
XPClassInfo info = uow.GetClassInfo(typeof(FileSystemStoreObject));
// находим отображаемые имена файлов данного обследования
var ownerFiles = uow.GetObjects(info, criteria, null, int.MaxValue, false, true).Cast<FileSystemStoreObject>().Select(x => x.FileName).ToList<String>();
FileSystemStoreObject fileStoreObject = new FileSystemStoreObject(uow)
{
OwnerId = owner,//((DevExpress.ExpressApp.DC.DCBaseObject)examination).Oid, // ИД владелеца файла
FileName = GetDatabaseFileName(fileName, ownerFiles),// Path.GetFileName(fileName),
};
uow.CommitChanges(); // создаем в базе новый объект FileSystemStoreObject
// пытаемся записать полученный файл
if (FileProcessor.TryToWriteTransferredFile(fileStoreObject.RealFileName, dataStream) == false)//|| new FileInfo(fileStoreObject.RealFileName).Length != initialSize)
{
//XtraMessageBox.Show(String.Format("File transfer error !!!\n {0}, {1}", context, fileName));
uow.Delete(fileStoreObject); // если записать файл не удалось, то удаляем из базы ссылку на файл
}
uow.CommitChanges();
// Обновляем главное окно
//UpdateWindow(context);
OnViewUpdate();
}