代码之家  ›  专栏  ›  技术社区  ›  UserEsp

如何更改kentico表的列标识?

  •  0
  • UserEsp  · 技术社区  · 8 年前

    每次尝试创建新媒体库时,我都会遇到一个错误。错误是:“无法在‘LibrarySiteId’列中插入NULL”,但我没有更改此默认值。请给我一些建议。

    1 回复  |  直到 8 年前
        1
  •  1
  •   Peter Mogilnitski    8 年前

    你在用吗 API to create media library ? 可能是背景。CurrentSiteID为空。DB wise您正在尝试将新行插入Media_library表,并且该表在LibrarySiteId字段上具有约束(非空)。

    要获取所有站点信息,可以查看数据库: select SiteID, SiteName from cms_site .现在您需要设置正确的siteId:您可以硬编码或使用api获取它:

    int siteID;
    SiteInfo siteForMediaLibrary = SiteInfoProvider.GetSiteInfo("SiteName");
    if (siteForMediaLibrary != null)
    {
        siteID = siteForMediaLibrary.SiteID;
    }
    

    ...

    以后当你添加你的库时

    newLibrary.LibrarySiteID = siteID ;

    推荐文章