2014-07-17 49 views
0

我有一個屬於C#新聞網站的管理面板。每個記錄(新聞)必須有一張或多張照片。照片將顯示在滑塊中。所以我不知道用戶會上傳多少照片。我在我的數據庫中有兩張桌子,圖片(PicID,NewsID,PicName,PicOrder)和新聞(NewsID,NewsHeader,NewsContent)。我可以將新聞標題和新聞內容添加到新聞表格中。但我不知道如何將我的照片和我的照片名稱添加到Pics Table中。 FileUpload控件是有用的,但我不知道會上傳多少照片。向數據庫添加記錄包括幾張照片

string path= ConfigurationManager.ConnectionStrings["GUNABConnectionString"].ConnectionString; 

    SqlConnection con = new SqlConnection(path); 

    SqlCommand[] cmd = new SqlCommand[1]; 
    string query= "Insert into News (NewsHeader, NewsContent) values (@NewsHeader, @NewsContent)"; 
    cmd[0] = new SqlCommand(); 
    cmd[0].CommandType = CommandType.Text; 
    cmd[0].Parameters.Add("@NewsHeader", SqlDbType.VarChar, 40).Value = TextBox1.Text; 
    cmd[0].Parameters.Add("@NewsContent", SqlDbType.VarChar, 8000).Value = TextBox2.Text; 

    cmd[0].CommandText = query; 

    if (new dab().execute(cmd) == true) 
    { 
     StatusLabel.Text = "News Added"; 
    } 
    else 
    { 

    } 
+0

插入後獲取外鍵,併爲每張上傳的圖片執行插入操作。 –

回答

0

改變插入到這樣的事情:

Insert into News 
(NewsHeader, NewsContent) 
OUTPUT inserted.NewsId 
values 
(@NewsHeader, @NewsContent) 

,然後只用cmd.ExecuteScalar()來檢索輸出,如所提供的價值

int key = (int)cmd.ExecuteScalar(); 

然後,您可以使用該鍵插入關聯的圖像。

如果問題涉及圖像的添加,假設你有它作爲System.Drawing.BitmapSystem.Drawing.Image在C#,你應該能夠通過添加它作爲一個正常的參數,將其傳遞給image數據庫字段類型。