本文整理汇总了C#中Microsoft.Practices.EnterpriseLibrary.Data.Sql.SqlDatabase.ExecuteSqlStringAccessor方法的典型用法代码示例。如果您正苦于以下问题:C# SqlDatabase.ExecuteSqlStringAccessor方法的具体用法?C# SqlDatabase.ExecuteSqlStringAccessor怎么用?C# SqlDatabase.ExecuteSqlStringAccessor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.Practices.EnterpriseLibrary.Data.Sql.SqlDatabase
的用法示例。
在下文中一共展示了SqlDatabase.ExecuteSqlStringAccessor方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DataReadMapping
private static void DataReadMapping(SqlDatabase database, MethodType type)
{
IEnumerable<Employee> employeeData;
switch (type)
{
case MethodType.One:
{
// Create an output row mapper that maps all properties based on the column names
IRowMapper<Employee> mapper = MapBuilder<Employee>.BuildAllProperties();
// Create a stored procedure accessor that uses this output mapper
var accessor = database.CreateSqlStringAccessor("SELECT * FROM Employees", mapper);
// Execute the accessor to obtain the results
employeeData = accessor.Execute();
break;
}
case MethodType.Two:
{
employeeData = database.ExecuteSqlStringAccessor<Employee>("SELECT * FROM Employees");
break;
}
case MethodType.Three:
{
IRowMapper<Employee> mapper = MapBuilder<Employee>.MapAllProperties()
.MapByName(x => x.LastName)
.DoNotMap(x => x.TitleOfCourtesy)
.Map(x => x.City).ToColumn("City")
.Map(x => x.HireDate).WithFunc(x => x.GetDateTime(x.GetOrdinal("HireDate")))
.Build();
var accessor = database.CreateSqlStringAccessor("SELECT * FROM Employees", mapper);
employeeData = accessor.Execute();
break;
}
default:
throw new NotSupportedException();
}
// Perform a client-side query on the returned data
var results = from employee in employeeData
where employee.Country == "USA"
orderby employee.EmployeeID
select new { Name = employee.FirstName };
results.ToList().ForEach(obj => Console.WriteLine(obj.Name));
var products = database.ExecuteSprocAccessor<Product>("Ten Most Expensive Products");
products.ToList().ForEach(product => Console.WriteLine(product.TenMostExpensiveProducts, product.UnitPrice));
var sales = database.ExecuteSprocAccessor<Sale>("SalesByCategory", "Beverages", "1998");
sales.ToList().ForEach(sale => Console.WriteLine(sale.ProductName, sale.TotalPurchase));
}
示例2: GetTableInfo
public static TableInfo GetTableInfo(string tableName, string cs)
{
// string cs = @"Server=sam-cld-43089-2\DEV;Database=test;Trusted_Connection=True;";
// string tableName = "t";
string querycols = @"select column_name as Name,data_type as SQLType from information_schema.columns
where TABLE_SCHEMA+'.'+table_name = '" + tableName + "' order by ordinal_position";
string queryPK = @"SELECT column_name as primarykeycolumn
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS TC
INNER JOIN
INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KU
ON TC.CONSTRAINT_TYPE = 'PRIMARY KEY' AND
TC.CONSTRAINT_NAME = KU.CONSTRAINT_NAME
and ku.TABLE_SCHEMA+'.'+ ku.table_name='"+tableName+"'";
var db = new SqlDatabase(cs);
var cols = db.ExecuteSqlStringAccessor<ColumnData>(querycols).ToList();
var pkName = db.ExecuteScalar(CommandType.Text, queryPK);
var pkNames = pkName.ToString();
var ti = new TableInfo();
ti.PK = cols.Single(x => x.Name == pkNames);
var usualCols = cols.Where(x => x.Name != pkNames);
ti.TableName = tableName;
ti.Columns = new List<ColumnData>(cols);
ti.UsualColumns = new List<ColumnData>(usualCols);
return ti;
}