【问题标题】:Mindscape.Lightspeed Error: Invalid object name 'KeyTable'Mindscape.Lightspeed 错误:对象名称“KeyTable”无效
【发布时间】:2011-05-20 06:59:40
【问题描述】:

我正在使用 Mindscape.Lightspeed 并收到以下错误: 错误:无效的对象名称“KeyTable”。

LightSpeedContext<LightSpeedModel1UnitOfWork> context = new LightSpeedContext<LightSpeedModel1UnitOfWork>("Development");

        using (var uow = context.CreateUnitOfWork())
        {
            SiteUser user = new SiteUser();
            user.UserName = "ABC";
            user.RoleId = 1;

            uow.Add(user);

        }

【问题讨论】:

    标签: c# lightspeed


    【解决方案1】:

    我在官方论坛上发布了这条评论,你也发布了这个问题:-)

    生成此错误消息是因为您使用的是 KeyTable 标识方法。 Identity Method 是 LightSpeed 为您的实体生成标识符的方式,默认情况下使用 KeyTable 模式。这需要一个名为“KeyTable”的表(在提供程序文件夹下的 LightSpeed 安装目录中有一个脚本)。

    如果您不想使用 KeyTable 标识方法,请在 .config 文件中的 LightSpeedContext 配置中配置适当的方法。帮助文件、入门截屏视频和一些示例中提供了有关各种方法的信息。

    您可以在此处在线阅读帮助文件页面:

    http://www.mindscape.co.nz/Help/LightSpeed/Help%20Topics/LightSpeed/IdentityGeneration.html

    希望对你有帮助

    约翰-丹尼尔

    【讨论】:

    【解决方案2】:

    为了节省一两步,这里是 Lightspeed 安装文件夹中用于在 SQL Server 2008 中创建 KeyTable 的 SQL (C:\Program Files (x86)\Mindscape\LightSpeed\Providers\SQLServer2008)

    IF EXISTS (SELECT * FROM sysobjects WHERE type = 'U' AND name = 'KeyTable')
    BEGIN
      DROP TABLE KeyTable
    END;
    
    CREATE TABLE KeyTable
    (
      NextId INT NOT NULL
    )
    
    INSERT INTO KeyTable VALUES (1);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多