2011-09-22 87 views
0

SQL 2008: 我有2個表TableMain & TableSub。這兩個表通過MainID相關聯 當我在TableMain中插入1條記錄時,它自動創建一個MainID。 我必須使用MainID &,然後在TableSub中插入幾條記錄。將主表中的記錄插入到子表中

TableMain有16個參數。 TableSub有4個不包含MainID的記錄參數。

我正在使用ASP.NET與SQLDatasource。

如果我在TableSub中有幾條記錄,我可以使用存儲過程同時插入所有記錄。由於至少有10多條記錄,因此不會有。的參數將變得難以管理。也沒有。 TableSub中的記錄將是可變的。

完成此操作的最佳方法是什麼?

編輯:ASP.NEt 3.5

如果我去的ObjectDataSource(NO DAL - .XSD文件)我怎麼設計我的業務邏輯層/數據訪問類?

  1. 我應該有2個數據訪問類 - 一個用於主&另一個用於Sub?

  2. Main - Insert()應該返回ID &使用我應該調用Sub-Insert() - 這應該是Main -Insert()代碼的一部分,還是應該明確地從文件類Main-Insert()?

  3. 使用與主對象數據源的教程&子表將不勝感激。

回答

0

我用DAL(.cs類)的ObjectDatasource。沒有使用XSD文件。沒有BLL,因爲我覺得這是一個矯枉過正的問題。但我做了SQLDatasource代碼&讓我的查詢工作&只是把它們放到DAL中。使用嚮導設置SQLDatasorce很容易。 我確實有2個DAL類,其中一個用於Sub &。

0

我想建議您使用EntityFramework以解決您的問題。

PS:從不使用SQLDataSource。 (我相信你永遠不會得到SqlDatasource所需的結果)

+0

爲什麼不使用它? – abatishchev

+1

@abatishchev如果只是一個演示,一個原型或一個快速入侵,那麼SQLDataSource是很好的和有效的。 http://stackoverflow.com/questions/1207295/sqldatasource-vs-objectdatasource – adatapost

+1

我不同意Marc。 SqlDataSource帶來了許多內置的功能,如分頁,排序等 - 你需要用ObjectDataSource手動實現的一切,所以是的,當你需要切換到更強大的控制,但它不只是爲演示 – abatishchev

相關問題