1

asp.net3.5とSQLServer2008をバックエンドデータストアとして使用するWebサイトがあります。今、私たちは私たちのウェブサイトに新しいページを追加したいと思います。ただし、このページで共有するデータは、ローカルシステムの1つでFoxProソフトウェアによってすでに作成および保存されています。

FoxProの経験はありません。私たちのサイトでこのデータを使用する方法はありますか?特に、サーバーに新しいデータベースを作成したり、すべてのレコードを再度インポートまたは書き込みしたりする必要はありませんか?そのような状況での最善の方法は何ですか?

ちなみに、FoxProデータベースの拡張子を変更することはできますか?Database.customExtのようなもの?

4

5 に答える 5

2

ADO.NETのOLEDBデータソースを使用してFoxProデータベースに接続できます。データをSQLServerにインポートする必要があるか、FoxProで直接アクセスする必要があるかはあなた次第です。クエリでSQLServerデータとデータを結合するかどうかによって異なります。

于 2012-04-17T16:17:41.770 に答える
2

あなたがすでに得た答えに加えて。LINQtoVFPまたはVFPEntityFramwork Providerを使用して、 LINQを使用してデータアクセスをさらに簡単にすることに興味があるかもしれません。

于 2012-04-17T18:31:05.220 に答える
1

このFoxproデータベースにリンクされたサーバーを作成できます。

また、Foxproテーブルには任意の拡張子を付けることができます。ただし、テーブルまたはデータベースを使用する場合は、拡張子を指定する必要があります。例えば:

OPEN DATABASE MyFoxProDatabase.customExt
USE mytable.custonExt
于 2012-04-17T16:56:04.543 に答える
1

FoxProへのデータアクセスを構造化するためのいくつかのオプションがあります。ADO.NETデータアクセスコードをコードビハインド、独自のc#ライブラリに配置するか、objectdatasourceを使用して双方向バインディングを行うことができます。

private void LoadData(string parameter)
{
    string sql = "SELECT a.myfield FROM mytable.customExt a WHERE a.whereField=?";
    using(OleDbConnection conn = new OleDbConnection(myConnectionString))
    {
        using (OleDbCommand command = new OleDbCommand(sql, conn))
        {
            command.Parameters.AddWithValue("@Parameter", parameter);

            try
            {
                conn.Open();
                using(OleDbDataReader dr = command.ExecuteReader(CommandBehavior.CloseConnection))
                {
                    myGridView.DataSource = dr;
                    myGridView.DataBind();
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
    }
}

web.configで使用する接続文字列の例を次に示します。

<add name="myData" connectionString="Provider=VFPOLEDB.1;Data Source=C:\MyFiles\" providerName="System.Data.OleDb"/>

FoxProテーブルとデータベースにカスタム拡張機能を使用できると信じています。その場合、すべてのSQLステートメントはその拡張機能を明示的に使用する必要があります。

SELECT t.MyField FROM MyTable.customExt t
于 2012-04-17T17:07:30.260 に答える
1

Visual FoxProテーブルの拡張子を変更できますが、これはDBFファイルにのみ影響します。テーブルにメモフィールドがある場合は、拡張子を変更できないFPTファイルが関連付けられています。同様に、テーブルにインデックスファイルが関連付けられている場合は、CDX拡張子が必要です。

したがって、拡張子を変更する理由が同じファイルステムを持つ複数のテーブルを許可することである場合は、許可しないでください。それは本当に物事を台無しにする良い方法です。

于 2012-04-17T20:35:05.453 に答える