1

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);

        }
4

2 に答える 2

4

このコメントは、あなたがこの質問を投稿した公式フォーラムにも投稿しました:-)

KeyTable ID メソッドを使用しているため、このエラー メッセージが生成されています。Identity Method は、LightSpeed がエンティティの識別子を生成する方法であり、デフォルトでは KeyTable パターンを使用します。これには、「KeyTable」というテーブルが必要です (プロバイダ フォルダの下の LightSpeed インストール ディレクトリに、このためのスクリプトがあります)。

KeyTable ID メソッドを使用したくない場合は、.config ファイルの LightSpeedContext 構成で適切なメソッドを構成してください。ヘルプ ファイル、はじめにのスクリーンキャスト、および一部のサンプルに、さまざまな方法に関する情報があります。

オンラインでヘルプ ファイルのページを読むことができます。

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

それが役立つことを願っています、

ジョン・ダニエル

于 2010-12-05T07:21:50.627 に答える
0

1、2 ステップを節約するために、SQL Server 2008 (C:\Program Files (x86)\Mindscape\LightSpeed\Providers\SQLServer2008) で KeyTable を作成するための Lightspeed インストール フォルダーからの SQL を次に示します。

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);
于 2013-12-12T02:11:36.037 に答える