0
您好傢伙我有一個Id增加的Sql表。我正在做的是使用模型通過外部鏈接或文件上傳上傳圖像,並將圖像文件保存在我的文件系統中,然後將文件名保存到我的數據庫中。我的困境是,當保存文件我想在我的數據庫上用它的後綴Id來命名它。但是我每次都得到Id爲0。無論如何,要做到保存到文件系統和保存到數據庫的兩個操作是相互依賴的,這樣如果一個失敗了,那麼另一個失敗。我不想讓你感到厭煩,所以你我保持代碼簡短。Linq to Sql在創建新條目時如何獲得行的ID
CREATE TABLE [dbo].[Media] (
[Id] INT IDENTITY (1, 1) NOT NULL,
[Title] NVARCHAR (50) NULL,
[Link] NVARCHAR (500) NULL,
PRIMARY KEY CLUSTERED ([Id] ASC)
);
視圖模型和數據庫模型看起來像
public class Post
{
//[Key] *Commented code is present in dbcontext model
//[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
//public int Id { get; set; }
// public string Link { get; set;} link to my filesystem
public string ExternalLink { get; set; }//gets saved on my filesystem
public HttpPostedFileBase File { get; set; }//gets saved on my filesystem
public string Title { get; set; }
}
我的控制器動作看起來像這樣
....Get the image in Sytem.Drawing.Image class called Img
string path = System.Web.HttpContext.Current.Server.MapPath("~/App_Data/Imgs/");
Img.Save(path); //dont want to save as path but as Path + Title + _Id.jpg
db.MediaSet.Add(mediat);
db.SaveChanges();