C# 使用企业库创建表

C# 使用企业库创建表,c#,enterprise-library,C#,Enterprise Library,我有一个在DB中创建表的方法,如下所示 public void CreateTable(List<string> columnNames, string tableName) { string connectionString = Utility.ReadDataFromConfig("ConnectionTest"); using (var connection = new SqlConnection(connectionString)) { var serv

我有一个在DB中创建表的方法,如下所示

public void CreateTable(List<string> columnNames, string tableName)
{
  string connectionString = Utility.ReadDataFromConfig("ConnectionTest");

  using (var connection = new SqlConnection(connectionString))
  {
    var server = new Server(new ServerConnection(connection));
    var db = server.Databases["GlassLookUp"];
    var newTable = new Table(db, tableName);
    var idColumn = new Column(newTable, "ID") { DataType = DataType.Int, Nullable = false };
    newTable.Columns.Add(idColumn);
    foreach (var titleColumn in from temp in columnNames
                  where temp != string.Empty
                  select new Column(newTable, temp) { DataType = DataType.VarChar(500), Nullable = true })
    {
      newTable.Columns.Add(titleColumn);
    }
    newTable.Create();
  }
}
public void CreateTable(列表列名、字符串表名)
{
string connectionString=Utility.ReadDataFromConfig(“ConnectionTest”);
使用(var连接=新的SqlConnection(connectionString))
{
var server=新服务器(新服务器连接(连接));
var db=server.Databases[“GlassLookUp”];
var newTable=新表(db,tableName);
var idColumn=newcolumn(newTable,“ID”){DataType=DataType.Int,Nullable=false};
newTable.Columns.Add(idColumn);
foreach(var titleColumn in from temp in columnNames
其中temp!=string.Empty
选择新列(newTable,temp){DataType=DataType.VarChar(500),Nullable=true})
{
newTable.Columns.Add(标题列);
}
newTable.Create();
}
}
我希望更改上述方法,以便使用企业库。我已经使用企业库来执行存储过程,但我不知道如何使用企业库来创建表


谢谢

看起来您的代码正在使用。我认为SMO不能用于企业库数据访问应用程序块。您所能做的最好是获得连接:

public void CreateTable(List<string> columnNames, string tableName)
{
    Database database = DatabaseFactory.CreateDatabase("ConnectionTest");
    string connectionString = database.ConnectionString;

    //...
    newTable.Create();
}
public void CreateTable(列表列名、字符串表名)
{
Database Database=DatabaseFactory.CreateDatabase(“ConnectionTest”);
字符串connectionString=database.connectionString;
//...
newTable.Create();
}
但这并没有增加多少价值