ASP.Net 2.0 メニュー

ページロード
ポストバック
入力チェック
ボタン実行時の処理
WebConfigの値を取得
正規表現によるチェック
ポップアップで画面を開く

コントロール関連
TextBox
TextChangedイベント処理
ドロップダウンリスト
カレンダー
HyperLink
MultiView
PropertyとListBox
DropDownListの選択毎に別なDropDownListの項目を変更
CheckBoxListのバインド時にチェック
DetailsView
asp:xmlコントロール

DataList関連
DataList
DataListのページング
DataListで選択、DetailsViewで表示

GridView関連
GridViewとXML
GridViewにボタンを追加
GridViewとSqlDataSource
SqlDataSourceに条件検索を追加
GridViewのDataSourceに配置
GridViewのDataSourceとページング
GridViewとObjectDataSource
GridViewにDataListを配置
GridViewにDropDownListを配置
GridViewにDropDownListの選択処理
GridViewに更新ボタン(SqlDataSource)
GridViewでXMLファイル更新
GridViewに行追加(DataTable)

FromView関連
データ表示、更新

SqlDataSource関連
SqlDataSourceでSELECT文発行
SqlDataSourceでINSERT文発行
SqlDataSourceでトランザクション

ファイル関連
ファイルアップロード
XMLファイル読み込み
ファイル読み込み
CSVファイルを読み込みGridViewに表示
xdoc2txtを実行する
iTextSharpでPDFファイル作成
JSON形式に変換
クラスデータをシリアライズ・デシリアライズ
Zipファイル作成
ファイルダウンロード

Excel関連
Excel出力
OLEDBを用いてExcelデータ抽出
OLEDBを用いてExcelにデータを挿入・更新

画面遷移Server.Transfer
セッションの利用
画面遷移の値の受け渡し
フォーム認証
Webアプリケーション全体の共有データ

DB関連
SQLServerに接続
SQLServerでトランザクション処理
ストアドプロシージャの実行
SQL文を非同期で発行
Oracleに接続
MySQLに接続

Ajax
ASP.Net2.0でAjaxを作成する
Timerコントロール

その他
メール送信
スクリプト文の実行
ライブドアのお天気情報を取得
Request送信

トップ
E-Mail
xml

ASP.Netで掲示板を作成しよう
VB.Netのお勉強
Excel マクロ・VBAのお勉強
PHPのお勉強
AJAXのお勉強
Webデザインのお勉強
Javaのお勉強
連想書籍検索
世界の観光地検索
路線図
総合サイトCocoaLiz
ネイルサロン検索
エステサロン検索
アロマサロン検索
アイビューティーサロン検索

クラスデータをシリアライズ・デシリアライズ@ASP.Net

クラスデータをシリアライズ、もしくはデシリアライズします。
シリアライズは、ソフトの内部で扱っているデータをファイルで保存したり、
ネットワークで送受信したりすることです。
デシリアライズは、その逆です。

最初に、クラスを作成します。
シリアライズするクラスには、「<Serializable()>」を付与します。

●class

<Serializable()> _
Public Class SerializeClass

    Public id As String
    Public name As String
    Public zipCd As String

End Class


画面を作成します。
ID、名前、郵便番号を入力するTextBoxを配置します。
シリアライズ、デシリアライズするボタンを設けます。

シリアライズ処理を記述します。
シリアライズしたいクラスを生成します。
画面の値を、作成したオブジェクトに格納します。

FileStreamを生成します。
BinaryFormatterを生成します。
BinaryFormatterのSerializeメソッドによりシリアライズします。
FileStreamとシリアライズしたいクラスのオブジェクトを渡します。

デシリアライズ処理を記述します。
FileStreamでデータが格納されているファイルを開きます。
BinaryFormatterのDeserializeメソッドにより、デシリアライズします。

●aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>クラスデータのシリアライズ・デシリアライズ</title>
</head>
<body>
<form id="form1" runat="server">
ID:<asp:TextBox ID="idTxt" runat="server"></asp:TextBox><br />
NAME:<asp:TextBox ID="nameTxt" runat="server"></asp:TextBox><br />
ZIPCODE:<asp:TextBox ID="zipCdTxt" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" Text="シリアライズ" />
<asp:Button ID="Button2" runat="server" Text="デシリアライズ" /><br />
</form>
</body>
</html>



●aspx.vb

Imports System.IO
Imports System.Runtime.Serialization.Formatters.Binary

Partial Class _Default
    Inherits System.Web.UI.Page

    'シリアライズ処理
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

        'シリアライズしたいクラスのオブジェクトを生成
        Dim serializeObj As SerializeClass = New SerializeClass()

        '画面の値を取得
        serializeObj.id = Me.idTxt.Text
        serializeObj.name = Me.nameTxt.Text
        serializeObj.zipCd = Me.zipCdTxt.Text

        Try
            'FileStream生成
            Using fileStream As FileStream = New FileStream("C:\data.txt", FileMode.Create)

                'System.Runtime.Serialization.Formatters.Binary
                Dim binaryFormatter As BinaryFormatter
                binaryFormatter = New BinaryFormatter()

                'シリアライズ
                binaryFormatter.Serialize(fileStream, serializeObj)
            End Using
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

    'デシリアライズ処理
    Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim serializeObj As New SerializeClass()

        Try
            'FileStream生成
            Using fileStream As FileStream = New FileStream("C:\data.txt", FileMode.Open)

                'System.Runtime.Serialization.Formatters.Binary
                Dim binaryFormatter As BinaryFormatter = New BinaryFormatter()

                'デシリアライズ
                serializeObj = CType(binaryFormatter.Deserialize(fileStream), SerializeClass)

                '画面に表示
                Me.idTxt.Text = serializeObj.id
                Me.nameTxt.Text = serializeObj.name
                Me.zipCdTxt.Text = serializeObj.zipCd

            End Using
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
End Sub
End Class




Copyright (C) ASP.Netのお勉強. All Rights Reserved.