0

「エンティティ データ モデル ウィザード」を使用して、単純な SQLite データベースからエンティティ フレームワーク モデルを構築しました。

これは問題なく動作し、私はしばらくそれに対してプログラミングを行ってきました。

ただし、この SQLite エンティティ フレームワーク モデルを DataGridView の DataSource として使用しようとしたところ、データソースとして表示されません。すべてがこれが可能であることを示唆しています。同じデータベースからの DataSet の作成は機能し、DataGridView はこれをデータソースとして使用できます。

エンティティ フレームワークを使用したいのですが、有効なデータ ソースと見なされない理由がわかりません。

助けてください!

ここで要求されているのは、app.config ファイルです。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections></configSections>
  <system.data>
    <DbProviderFactories>
  <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite" />
</DbProviderFactories>
  </system.data>
  <system.diagnostics>
    <sources>
      <!-- This section defines the logging configuration for My.Application.Log -->
  <source name="DefaultSource" switchName="DefaultSwitch">
    <listeners>
      <add name="FileLog" />
      <!-- Uncomment the below section to write to the Application Event Log -->
      <!--<add name="EventLog"/>-->
    </listeners>
  </source>
</sources>
<switches>
  <add name="DefaultSwitch" value="Information" />
</switches>
<sharedListeners>
  <add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" initializeData="FileLogWriter" />
  <!-- Uncomment the below section and replace APPLICATION_NAME with the name of your application to write to the Application Event Log -->
  <!--<add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="APPLICATION_NAME"/> -->
</sharedListeners>
  </system.diagnostics>
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
  </startup>
  <connectionStrings>
  <add name="simpleEntities" connectionString="metadata=res://*/GEM.Classes.test1.csdl|res://*/GEM.Classes.test1.ssdl|res://*/GEM.Classes.test1.msl;provider=System.Data.SQLite;provider connection string=&quot;data source=E:\simple.db3&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

テストとして、私は非常に単純なデータベースを使用しました:

CREATE TABLE SETTINGS (
KEY VARCHAR(50) PRIMARY KEY NOT NULL ,
VALUE VARCHAR(255)  NULL DEFAULT NULL);
4

1 に答える 1

0

EFを捨てて、うまくいくように見えるDataSetを使うことにしました。

于 2012-10-26T09:57:18.830 に答える