■73108 / inTopicNo.2) |
Re[1]: フォームオブジェクトをデータベースのxlm型フィールド保存 |
□投稿者/ 魔界の仮面弁士 (83回)-(2014/08/19(Tue) 18:52:39)
|
■No73106 (yama さん) に返信
> Dobon.Net様のサイトで確認したのですが
そちらのサイトを利用されているのであれば、そこにも
http://dobon.s7.xrea.com/bbs/cbbs.cgi
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi
といった掲示板がありますよ。
> フォーム(Form1)にあるオブジェクト(Txtbox1、Txtbox2)を
TextBox を保存するとして、保持しておきたい内容は Text プロパティのみで良いでしょうか?
文字色,背景色,フォント,サイズ/位置,Tag プロパティ,Name プロパティ等々、
いろいろな情報がありますよね。
中には Handle プロパティのように、復元が不可能な情報もありますし。
> データベースのXml型フィールドに保存、
どのようなテーブルに、どのような Xml として保持したいのか、
具体的な情報がまったく無いので回答しにくいですが、とりあえず Xml データとして
<Text TextBox1="あいうえお" TextBox2="かきくけこ" />
という形式のデータを、
CREATE TABLE [Table1] ( Id nchar(3) NOT NULL PRIMARY KEY, Data xml NOT NULL);
に対して読み書きする例を。
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim xml = <Text
TextBox1=<%= TextBox1.Text %>
TextBox2=<%= TextBox2.Text %>
/>
Dim sql As String
sql = "DELETE Table1 WHERE Id='100';INSERT INTO Table1 (Id, Data) VALUES ('100', @p);"
Dim cn As New System.Data.SqlClient.SqlConnection(My.Settings.ConnectionString)
cn.Open()
Dim sc As New System.Data.SqlClient.SqlCommand(sql, cn)
Dim p = sc.Parameters.Add("@p", SqlDbType.Xml)
p.Value = New System.Data.SqlTypes.SqlXml(xml.CreateReader())
sc.ExecuteNonQuery()
cn.Close()
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim sql As String = "SELECT Data FROM Table1 WHERE Id = '100'"
Dim cn As New System.Data.SqlClient.SqlConnection(My.Settings.ConnectionString)
cn.Open()
Dim sc As New System.Data.SqlClient.SqlCommand(sql, cn)
Dim xml = XDocument.Parse(sc.ExecuteScalar())
cn.Close()
TextBox1.Text = xml.Root.@TextBox1
TextBox2.Text = xml.Root.@TextBox2
End Sub
End Class
|
|