- - PR -
JavaのtransientはC#では?
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-08-21 21:23
お世話になっております。
オブジェクトをシリアライズできない場合にそのオブジェクトをスキップして エラーをスローしないようにする修飾子(?)はC#であるのでしょうか。 Javaではtransientだったのですが、C#では何になるのでしょうか よろしくお願いします。 | ||||
|
投稿日時: 2003-08-21 23:17
お疲れ様です。
Java⇔.NETでの同一オブジェクトのマッピングという点で共通なので 同様のスレッドに記述させて頂きますが PreparedStatementと同等のオブジェクトはADO.NETで 提供されているのでしょうか。 | ||||
|
投稿日時: 2003-08-22 10:45
> オブジェクトをシリアライズできない場合にそのオブジェクトをスキップして
> エラーをスローしないようにする修飾子(?)はC#であるのでしょうか。 NonSerialized属性かな? http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemnonserializedattributeclasstopic.asp | ||||
|
投稿日時: 2003-08-22 11:13
お返事ありがとうございます。
間違っていたら申し訳ありませんが、このNonSerialized属性は クラスに設定するものだと理解しました。 私が行いたいのは、クラスをシリアライズ化する際に クラス内のこのオブジェクトはシリアライズ化する/しない を切り替えたいと思っております。 そういった事は可能なのでしょうか。 ちなみに「PreparedStatement」に関しては、.NETでは 「Command.Prepare()」が存在しました。 | ||||
|
投稿日時: 2003-08-22 11:58
シリアライズする/しないですか?最初のご質問は、クラスのメンバにシリアライズ不可能なクラスが含まれているときに例外をスローさせない、だと理解したのですが。 ISerializableインタフェースをインプリメントしたならば、GetObjectData()メソッド内でSerializationInfoに追加しなければシリアル化されません。 XMLシリアライザでシリアル化させないメンバは、System.Xml.Serialization.XmlIgnoreAttribute属性をつけます。 NonSerialized属性もしかり。参照ページからの引用 <Serializable()> Public Class TestSimpleObject Public member1 As Integer Public member2 As String Public member3 As String Public member4 As Double ' A member that is not serialized. <NonSerialized()> Public member5 As String Public Sub New() member1 = 11 member2 = "hello" member3 = "hello" member4 = 3.14159265 member5 = "hello world!" End Sub 'New Public Sub Print() Console.WriteLine("member1 = '{0}'", member1) Console.WriteLine("member2 = '{0}'", member2) Console.WriteLine("member3 = '{0}'", member3) Console.WriteLine("member4 = '{0}'", member4) Console.WriteLine("member5 = '{0}'", member5) End Sub 'Print End Class 'TestSimpleObject [ メッセージ編集済み 編集者: Jitta 編集日時 2003-08-22 12:01 ] |
1