簡體   English   中英

使用企業庫創建表

[英]Create Table using Enterprise Library

我有一種方法可以通過它在數據庫中創建一個表,如下所示,

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();
  }
}

我希望更改上述方法,以便使用企業庫。 我已經使用企業庫執行存儲過程,但是我不知道如何使用企業庫創建表。

謝謝

看起來您的代碼正在使用SQL Server管理對象(SMO) 我認為您無法通過Enterprise Library Data Access Application Block以有用的方式使用SMO。 您能做的最好的就是獲得連接:

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

    //...
    newTable.Create();
}

但這並沒有增加太多價值。 :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM