本文整理汇总了C#中EntityManager.ExecuteQueryLocally方法的典型用法代码示例。如果您正苦于以下问题:C# EntityManager.ExecuteQueryLocally方法的具体用法?C# EntityManager.ExecuteQueryLocally怎么用?C# EntityManager.ExecuteQueryLocally使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EntityManager
的用法示例。
在下文中一共展示了EntityManager.ExecuteQueryLocally方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: QueryWithAFilter
public async Task QueryWithAFilter()
{
var manager = new EntityManager(_serviceName);
// Metadata must be fetched before CreateEntity() can be called
await manager.FetchMetadata();
// Ensure there is at least one active todo item named Wine in the database
var wines = await new EntityQuery<TodoItem>().Where(td => td.Description == "Wine" && !td.IsArchived && !td.IsDone).Execute(manager);
if (!wines.Any()) {
var newWine = manager.CreateEntity<TodoItem>(new {Description = "Wine"});
await manager.SaveChanges();
}
manager.Clear();
//Snippet1
var query1 = new EntityQuery<TodoItem>();
var allTodos = await manager.ExecuteQuery(query1);
Assert.IsTrue(allTodos.Any(), "No TodoItems in the database");
//Snippet2
var query2 = query1.Where(td => !td.IsArchived);
var unarchivedTodos = await manager.ExecuteQuery(query2);
Assert.IsTrue(unarchivedTodos.Any(), "No unarchived TodoItems in the database");
//Snippet3
var query3 = query1.Where(td => !td.IsArchived && !td.IsDone);
var activeTodos = await manager.ExecuteQuery(query3);
Assert.IsTrue(activeTodos.Any(), "No active TodoItems in the database");
//Snippet4
var query4 = query1.Where(td => td.Description.Contains("Wine"));
var wineTodos = await manager.ExecuteQuery(query4);
Assert.IsTrue(allTodos.Any(), "No Wine TodoItems in the database");
//Snippet5
// Execute above query locally
var localWineTodos = manager.ExecuteQueryLocally(query4);
Assert.AreEqual(wineTodos.Count(), localWineTodos.Count(), "Got " + localWineTodos.Count() + " local wine TodoItems");
}
示例2: ExportImportSelectedEntities
public async Task ExportImportSelectedEntities()
{
var manager = new EntityManager(_serviceName);
var manager2 = new EntityManager(_serviceName);
await PrimeCache(manager);
var customers = manager.GetEntities<Customer>().ToList();
var exportData1 = manager.ExportEntities(new IEntity[] {customers[0]}); // array with 1 customer
var importData1 = manager2.ImportEntities(exportData1);
Assert.AreEqual(1, importData1.ImportedEntities.Count);
manager2.Clear();
var exportData2 = manager.ExportEntities(new IEntity[] {customers[0], customers[1]}); // array of 2 customers
var importData2 = manager2.ImportEntities(exportData2);
Assert.AreEqual(2, importData2.ImportedEntities.Count);
manager2.Clear();
Assert.AreEqual(0, manager.GetChanges().Count());
customers.First().City = "Paris";
var exportData3 = manager.ExportEntities(manager.GetChanges()); // all pending changes
var importData3 = manager2.ImportEntities(exportData3);
Assert.AreEqual(1, importData3.ImportedEntities.Count);
manager2.Clear();
var selectedCustomerQuery = new EntityQuery<Customer>().Where(customer => customer.City.StartsWith("P"));
var selectedCustomers = manager.ExecuteQueryLocally(selectedCustomerQuery); // cache-only query returns synchronously
var exportData4 = manager.ExportEntities(selectedCustomers); // the 'P' customers
var importData4 = manager2.ImportEntities(exportData4);
Assert.AreEqual(1, importData4.ImportedEntities.Count);
}