1


0

Visual Studio 2010にSubsonic 3.0.0.4を追加します

C#3.5に焦点を合わせたコンソールアプリケーションを作成し、System.Web、System.Configuration、Subsonic.Coreへの参照を追加しました。 構成ファイルにもあります


その後、Settings.ttincludeを編集しました

const string Namespace = "Integra.Data";
    const string ConnectionStringName = "UpdateCotswolds.Properties.Settings.Live_IntegraConnectionString";

    //This is the name of your database and is used in naming
    //the repository. By default we set it to the connection string name
    const string DatabaseName = "Live_Integra";

ttファイルにドラッグします。

実行するとエラーが発生します…​

Error   2   Running transformation: System.InvalidOperationException: Sequence contains more than one matching element
   at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable`1 source, Func`2 predicate)
   at Microsoft.VisualStudio.TextTemplating47D0892A160210D689C6B90986A9AE0D.GeneratedTextTransformation.LoadTables() in c:\Programming\UpdateCotswolds\UpdateCotswolds\SQLServer.ttinclude:line 134
   at Microsoft.VisualStudio.TextTemplating47D0892A160210D689C6B90986A9AE0D.GeneratedTextTransformation.TransformText() in c:\Programming\UpdateCotswolds\UpdateCotswolds\ActiveRecord.tt:line 23
   at Microsoft.VisualStudio.TextTemplating.TransformationRunner.RunTransformation(TemplateProcessingSession session, String source, ITextTemplatingEngineHost host, String& result)

これが問題の行です…​

var pkColumn=tbl.Columns.SingleOrDefault(x=>x.Name.ToLower().Trim()==tbl.PrimaryKey.ToLower().Trim());

私は愚かな間違いを犯していると推測していますが、誰かが私をまっすぐに設定できることを願っています…​

前もって感謝します…​

1 Answer


2


特定のテーブルに複数の主キーがあるように見えますか? スキーマを投稿できますか? または、PKとFKの名前がまったく同じで、SSが混乱している可能性があります。

たぶん、string [] ExcludeTables = new string [] \ {};で遊ぶことができます。 「Settings.ttinclude」の下にあるプロパティが機能し、その1つのテーブルのスキーマが提供されるまで。