实体框架中的 NEWID() SQL Server 函数

ben*_*ben 2 c# sql-server asp.net entity-framework

我正在使用AngularJSASP.NET实体框架SQL Server数据库开发一个 Web 应用程序。

我想通过此方法使用EF插入一些行:

public string addRow(int CaptionID, string enLang)
{
    string output = "";
    try
    {
        var Cap = new Table_Name();

        string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;

        Cap.CodeId = CaptionID;
        Cap.Created = DateTime.Now;
        Cap.CreatedBy = userName;
        Cap.ID = "";
        Cap.CodeLanguage = "en";
        Cap.CodeCountry = "GB";
        Cap.Caption = enLang;
        _db.Entry(Cap).State = EntityState.Added;

        _db.SaveChanges();

        output = "Created";

    }
    catch (Exception ex)
    {
        output = ex.InnerException.Message;
    }
    return output;
}
Run Code Online (Sandbox Code Playgroud)

这个功能有效。

但我对这个函数有一个疑问NEWID(),我已经搜索了很多以知道如何重现相同的内容,但我不知道,我看过这个线程,但什么也没有。

事实上,我想分配NEWID()Cap.ID.

PS:我知道是否可以通过分配SELECT NEWID()to来使用 SQLServer 来完成此操作Cap.ID,但我正在寻找一种使用EF来完成此操作的方法。

Mag*_*nus 5

做就是了:Cap.ID = Guid.NewGuid();