2017-05-03 11 views
0

以前にバックエンド開発に関する質問がありましたが、私は提供されたソリューションを使用して作業していましたが、私はAzureデータベースにテーブルを作成でき、Microsoft Database Studioを使用してこれらのテーブルにエントリを追加できることを理解しています。アプリケーションコードを使用してAzureデータベーステーブルエントリにアクセスする方法Visual Studio

私の問題は、これらのデータにアクセスしてアプリケーションの画面に表示するはずのクロスプラットフォームアプリケーションを作成することです。

テーブルは、2つの列があり、「キー」と「テキスト」

アプリは、各ボタンを順にテーブルからキーが割り当てられているボタンの配列をロードすることによって開始し、示している関連の断片」テキスト"。クリックすると、ページの全文を示す新しいページが開きます。

簡単に聞こえましたが、実装方法はわかりません。私が念頭に置いていたことのように見える何か、許したが、これはただのラフイラストです:これはすべてのアレイだった場合、私はおそらくこれを行うことができますが、表では、私が何をすべきか非常に小さなアイデアを持っている

//each button is some sort of class 
for (int i=1; i< Table.length; i++){ 
    create button 
    button.key=i; 
    button.text=table[i].text; 
} 

//each button has an onclick method 
void onClick(){ 
    open page with text box 
    textbox.text=button.text 
} 

。私は本当にこれにいくつかの助けに感謝します。

答えて

0

これがすべての配列だった場合は、おそらくこれを行うことができますが、テーブルでは、私は何をすべきかほとんど考えていません。

テーブルのデータをクエリしてコレクションに保存するサンプルコードを提供します。

プログラミング言語にC#を使用する場合は、ADO.NETを使用してAzure SQLデータベースからデータをクエリできます。 .NETコアを使用する場合は、ADO.NETを使用する前に 'System.Data.SqlClient'パッケージをインストールする必要があります。

C#コードでは、2つのプロパティを持つクラスを定義します。

public class KeyAndText 
{ 
    public string Key { get; set; } 

    public string Text { get; set; } 
} 

C#コード:テーブルからデータを取得し、コレクションに保存

List<KeyAndText> keyAndTextCollection = new List<KeyAndText>(); 

string connectionString = ""; 
SqlConnection connection = new SqlConnection(connectionString); 
SqlCommand cmd = new SqlCommand("select * from tablename", connection); 
connection.Open(); 

SqlDataReader reader = cmd.ExecuteReader(); 

while (reader.Read()) 
{ 
    KeyAndText item = new KeyAndText(); 
    item.Key = reader.GetString(reader.GetOrdinal("Key")); 
    item.Text = reader.GetString(reader.GetOrdinal("Text")); 

    keyAndTextCollection .Add(item); 
} 

connection.Close(); 

あなたはAzureのポータルから接続文字列を得ることができます。デフォルトでは

enter image description here

我々はファイアウォールの設定でIPアドレスを設定していない場合は、AzureのSQL Azureのファイアウォールは、SQLデータにアクセスするためのクライアントをブロックします。アプリケーションを実行する前に設定してください。

enter image description here

は、上段の後、あなたはキーとテキストのリストが含まれていkeyAndTextCollectionという名前のコレクションを取得します。あなたはボタンを生成するためにそれを使うことができます。

for (int i = 1; i < keyAndTextCollection.Count; i++) 
{ 
    create button 
    button.key = keyAndTextCollection[i].Key; 
    button.text = keyAndTextCollection[i].Text; 
} 
+0

Oマイゴシック、ありがとうございます!私は数日間このことを理解しようとしてきました、ありがとう! –

+0

こんにちは、私はあなたのメソッドを使用しようとする問題に遭遇しました。質問はここに掲載されています:[System.Data.SqlClientをインストールする際の問題点](http://stackoverflow.com/questions/43770293/cannot-instell-system-data-sqlclient-in-visual-studio-xamarin-project) –

関連する問題