C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[10]: DataSetの使い方


(過去ログ 84 を表示中)

[トピック内 12 記事 (1 - 12 表示)]  << 0 >>

■50102 / inTopicNo.1)  DataSetの使い方
  
□投稿者/ こまる (12回)-(2010/05/28(Fri) 10:05:54)

分類:[ASP.NET (VB)] 

2010/05/30(Sun) 12:32:22 編集(投稿者)
2010/05/28(Fri) 10:07:31 編集(投稿者)

よろしくお願いします。
引用返信 編集キー/
■50103 / inTopicNo.2)  Re[1]: DataSetの使い方
□投稿者/ ごう (101回)-(2010/05/28(Fri) 10:21:16)
> 前は、Arraylist でDropdownlistに表示しました。
できたようで、よかったですね。


> 次は、DataSetを使ってやりたいです。
> csvを読み込んでるので、フィールド名はありません。
> よろしくお願いします。

まず、マニュアルは読みましたか???
http://msdn.microsoft.com/ja-jp/library/system.data.datatable(VS.80).aspx

まず、DataTableを作り、DataSetに追加しましょう。
ColumnName = "name"ってのと
ColumnName = "img"ってのと作って
nameの方にはred
imgの方にはaaa.png みたいな感じでデータを入れていけばいいんじゃないでしょうか。

ここまで出来たら、次の段階DataSetをDropDownListにバインドさせればいいですね。





引用返信 編集キー/
■50109 / inTopicNo.3)  Re[2]: DataSetの使い方
□投稿者/ こまる (14回)-(2010/05/28(Fri) 10:41:01)
No50103 (ごう さん) に返信
>>前は、Arraylist でDropdownlistに表示しました。
> できたようで、よかったですね。
>
>
>>次は、DataSetを使ってやりたいです。
>>csvを読み込んでるので、フィールド名はありません。
>>よろしくお願いします。
>
> まず、マニュアルは読みましたか???
> http://msdn.microsoft.com/ja-jp/library/system.data.datatable(VS.80).aspx
>
> まず、DataTableを作り、DataSetに追加しましょう。
> ColumnName = "name"ってのと
> ColumnName = "img"ってのと作って
> nameの方にはred
> imgの方にはaaa.png みたいな感じでデータを入れていけばいいんじゃないでしょうか。
>
> ここまで出来たら、次の段階DataSetをDropDownListにバインドさせればいいですね。
>
>

今回もcsvの中身を読み込みます。↑のやり方では、csvの中身は反映されますか?
引用返信 編集キー/
■50112 / inTopicNo.4)  Re[3]: DataSetの使い方
□投稿者/ ごう (104回)-(2010/05/28(Fri) 10:44:34)
No50109 (こまる さん) に返信

> 今回もcsvの中身を読み込みます。↑のやり方では、csvの中身は反映されますか?

CSVからどのようにデータを取得すればいいかは、昨日やりましたよね。
データを入れて行く作業は、それを応用していけばできませんか?


引用返信 編集キー/
■50114 / inTopicNo.5)  Re[4]: DataSetの使い方
□投稿者/ こまる (16回)-(2010/05/28(Fri) 10:47:57)
2010/05/30(Sun) 12:34:25 編集(投稿者)

No50112 (ごう さん) に返信
> ■No50109 (こまる さん) に返信
>
>>今回もcsvの中身を読み込みます。↑のやり方では、csvの中身は反映されますか?
>
> CSVからどのようにデータを取得すればいいかは、昨日やりましたよね。
> データを入れて行く作業は、それを応用していけばできませんか?
>
>
昨日の応用で行けるんですか!?
0
引用返信 編集キー/
■50117 / inTopicNo.6)  Re[5]: DataSetの使い方
□投稿者/ ごう (105回)-(2010/05/28(Fri) 11:29:00)
昨日の応用と、マニュアルのサンプルコードを応用すると
こんな感じで出来ます。


※ 理解してないWeb上のサンプルコードを流用するのは
  誤動作の原因になり危険で、お勧めできませんよ・・・
  (例えば、お客さんから「不具合の原因を説明しろ」って言われても説明できないでしょ)

        Dim csvRecords As New System.Collections.ArrayList()

        'CSVファイル名
        Dim csvFileName As String = "C:\test.csv"

        'Shift JISで読み込む
        Dim tfp As New FileIO.TextFieldParser(csvFileName, _
        System.Text.Encoding.GetEncoding(932))
        'フィールドが文字で区切られているとする
        'デフォルトでDelimitedなので、必要なし
        tfp.TextFieldType = FileIO.FieldType.Delimited
        '区切り文字を,とする
        tfp.Delimiters = New String() {","}
        'フィールドを"で囲み、改行文字、区切り文字を含めることができるか
        'デフォルトでtrueなので、必要なし
        tfp.HasFieldsEnclosedInQuotes = True
        'フィールドの前後からスペースを削除する
        'デフォルトでtrueなので、必要なし
        tfp.TrimWhiteSpace = True

        While Not tfp.EndOfData
            'フィールドを読み込む
            Dim fields As String() = tfp.ReadFields()
            '保存
            csvRecords.Add(fields)
        End While
        '後始末
        tfp.Close()


        ' DataTableの作成(仮に"ImageTable"って名前にしておく)
        Dim table As DataTable = New DataTable("ImageTable")

        ' DataColumn, DataRow オブジェクトを作っておく
        Dim column As DataColumn
        Dim row As DataRow

        ' DataColumnを作って DataTableに追加   
        column = New DataColumn()
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "name"
        column.ReadOnly = True
        column.Unique = True

        table.Columns.Add(column)

        ' 2つ目のDataColumn作成
        column = New DataColumn()
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "image"
        column.AutoIncrement = False
        column.Caption = "ParentItem"
        column.ReadOnly = False
        column.Unique = False

        table.Columns.Add(column)

        ' DataSetを作成.
        Dim DataSet As DataSet
        DataSet = New DataSet()

        'DataSetに DataTable を指定
        DataSet.Tables.Add(table)

        ' 今回は列番号1と2が必要
        ' csvの内容をDataTableに追加
        Dim strName, strImg As String
        Dim x As Integer
        For x = 0 To csvRecords.Count - 1
            strName = csvRecords(x)(1) ' DropDownListに表示する名称
            strImg = csvRecords(x)(2) ' 画像ファイル名

            row = table.NewRow()
            row("name") = strName
            row("image") = strImg
            table.Rows.Add(row)
        Next

' ここから先は、DropDownListのDataTextField, DataValueFieldを使います。
' DataTextFieldに"name"
' DataValueFieldに"image"を指定すればできるでしょう。
(DropDownListについてマニュアルを見てください。)


   

引用返信 編集キー/
■50124 / inTopicNo.7)  Re[6]: DataSetの使い方
□投稿者/ こまる (18回)-(2010/05/28(Fri) 13:26:32)
2010/05/30(Sun) 12:33:34 編集(投稿者)

ありがとうございます。
引用返信 編集キー/
■50126 / inTopicNo.8)  Re[7]: DataSetの使い方
□投稿者/ ごう (107回)-(2010/05/28(Fri) 13:42:44)
No50124 (こまる さん) に返信
> ありがとうございます。
> ひとつ気になったのですが。
>
> DataSource=
>
> イコールの後には何を入れればいいのですか?
> DataTextFieldとDataValueFieldは理解しました。



http://msdn.microsoft.com/ja-jp/library/system.web.ui.webcontrols.dropdownlist_properties(VS.80).aspx
http://msdn.microsoft.com/ja-jp/library/system.web.ui.webcontrols.basedataboundcontrol.datasource(VS.80).aspx
引用返信 編集キー/
■50138 / inTopicNo.9)  Re[8]: DataSetの使い方
□投稿者/ こまる (20回)-(2010/05/28(Fri) 16:36:19)
2010/05/30(Sun) 12:35:09 編集(投稿者)

No50126 (ごう さん) に返信
> ■No50124 (こまる さん) に返信

引用返信 編集キー/
■50139 / inTopicNo.10)  Re[9]: DataSetの使い方
□投稿者/ ごう (109回)-(2010/05/28(Fri) 17:39:52)
No50138 (こまる さん) に返信
> ■No50126 (ごう さん) に返信
>>■No50124 (こまる さん) に返信
> >>ありがとうございます。
> >>ひとつ気になったのですが。
> >>
> >>DataSource=
> >>
> >>イコールの後には何を入れればいいのですか?
> >>DataTextFieldとDataValueFieldは理解しました。
>>
>>
>>
>>http://msdn.microsoft.com/ja-jp/library/system.web.ui.webcontrols.dropdownlist_properties(VS.80).aspx
>>http://msdn.microsoft.com/ja-jp/library/system.web.ui.webcontrols.basedataboundcontrol.datasource(VS.80).aspx
>
> マニュアル見ましたが、書いていますか??
> ずっと探しているのですが。


例はこうなっていますよね。
Dim instance As BaseDataBoundControl
Dim value As Object

instance.DataSource = value

instance というのはここではDropDownList
value というのはDataSourceです。





引用返信 編集キー/
■50149 / inTopicNo.11)  Re[9]: DataSetの使い方
□投稿者/ もりお (229回)-(2010/05/29(Sat) 07:22:02)
No50138 (こまる さん) に返信

> マニュアル見ましたが、書いていますか??
> ずっと探しているのですが。

DropDownList.DataSource プロパティにどのオブジェクトをセットするとよいの
か、わからないということですよね。
確かに MSDN の文章は少し分かりにくいかもしれません。

BaseDataBoundControl.DataSource プロパティ
http://msdn.microsoft.com/ja-jp/library/system.web.ui.webcontrols.basedataboundcontrol.datasource(VS.80).aspx

解説のところに
「DataSource プロパティを設定すると、ValidateDataSource メソッドが呼び
出されます。」
という一文があります。
さらに、ValidateDataSource のリンク先を見ると
ValidateDataSource メソッドはオブジェクトが IEnumerable、IListSource、
IDataSource であるかを検証しますよーといったことが記述されています。

DropDownList.DataSource プロパティには IEnumerable、IListSource、
IDataSource いずれかのオブジェクトをセットすることができます。
セット可能なオブジェクトの例としては以下のようなものが考えられます。
IListSource を実装する DataSet
IListSource を実装する DataTable
IEnumerable を実装する ArrayList
IEnumerable を実装する List(Of T)
IDataSource を実装する SqlDataSource
IDataSource を実装する ObjectDataSource

引用返信 編集キー/
■50182 / inTopicNo.12)  Re[10]: DataSetの使い方
□投稿者/ こまる (24回)-(2010/05/30(Sun) 11:36:07)
ありがとうございます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -