0

わかりました、vb.net でデータ テーブルをシリアル化しようとしています。

Dim dt As New System.Data.DataTable

およびシリアライザの場合:

Dim js As JavaScriptSerializer = New JavaScriptSerializer()
dim jsonString as string
jsonString=js.serialize(dt)

最後の行でデータ テーブルをシリアル化すると、エラーが発生しました。

System.Web.Extensions.dll で、タイプ 'System.InvalidOperationException' の未処理の例外が発生しました

追加情報: 'System.Globalization.CultureInfo' 型のオブジェクトをシリアル化中に循環参照が検出されました

1列1行のみの最も単純なデータテーブルも作成しましたが、シリアル化されません。

私はこの種の質問が答えられたことを知っています:ここで

しかし、答えを実装する方法(新しいクラスを作成する方法)がわかりませんか、それとももっと良い解決策がありますか?

4

1 に答える 1

1

私の知る限り、DataTable オブジェクト用のすぐに使えるシリアライザーはありません。最終的にはフルカスタム連載で行きました。もう 1 つの方法は、最初に DataTable を IEnumerable<> に変換してからシリアル化することです。

ただし、次のリンクが役立つ場合があります: JSV

于 2012-04-19T22:58:21.507 に答える