1

データベースに接続するEntityModel作成済みのものがあります。ADO.NETを埋めたいDataGridview。そのために、私はこのコードに従っています:

using System.Data;
using System.Data.SqlServerCe;
using System.Windows.Forms;

namespace WindowsFormsApplication5
{
public partial class Form1 : Form
{
public Form1()
{
    InitializeComponent();
    FillData();
}

void FillData()
{
    // 1
    // Open connection
    using (SqlCeConnection c = new SqlCeConnection(
    Properties.Settings.Default.DataConnectionString))
    {
    c.Open();
    // 2
    // Create new DataAdapter
    using (SqlCeDataAdapter a = new SqlCeDataAdapter(
        "SELECT * FROM Animals", c))
    {
        // 3
        // Use DataAdapter to fill DataTable
        DataTable t = new DataTable();
        a.Fill(t);
        // 4
        // Render data onto the screen
        dataGridView1.DataSource = t;
    }
    }
}
}

ADO.NETこのコードは Web ページからのものなので、自分のモデルに適応させようとしています。がどこからProperties.Settings.Default.DataConnectionString来たのかわからないので、データベースへの接続に使用される接続文字列だと思ったので、 に続いてEntity Model、接続文字列を取得するために次のように書きました。

SqlCeConnection c = new SqlCeConnection(db.Connection.ConnectionString);

dbは次のように作成Entity Modelされます。

private dbEntities db = new dbEntities();

しかし、これdb.Connection.ConnectionString"name= dbEntities"db.Connection.DataSourceを返すので、次の文字列を返すに変更しました。

"C:\\Users\\user\\Documents\\Visual Studio 2010\\Projects\\ProjectName\\MySQLProject\\bin\\Debug\\db.sdf" string

しかし、文字列形式は調整されていないと言っています(明らかに...)。私はSQL Serverを使用していますが、その接続を取得する方法がわかりません:(

Properties.Settings.Default.DataConnectionStringこう言っています。

        Properties.Settings.Default.dbConnectionString  'System.Windows.Forms.PropertyStore' 

'Settings' の定義が含まれておらず、タイプ 'System.Windows.Forms.PropertyStore' の最初の引数を受け入れる拡張メソッド 'Settings' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)

4

1 に答える 1

1

このメッセージは、接続文字列の形式が間違っているという意味ではありません。あなたのプロジェクトには設定がないと言われています。

それぞれの設定を作成しましたか? それらを編集するには、プロジェクトの [プロパティ] エントリをダブルクリックし、[設定] タブに切り替えます。エントリがない場合dbConnectionStringは作成します。

于 2013-01-11T09:06:36.887 に答える