c# asp.netのコンポーネントTreeviewにチェックボックスを表示させて、チェックボックス選択状態をデータベース、またはファイル(XMLなど)保存して、再びその保存データを読み出したら、選択状態を再現する方法を検討中です。

Treeviewの作成は親子関係を持つマスタテーブルを作成すればできるかと考えています。

選択状態を再現する場合はどのようなテーブルまたはファイルを設計するのが良いでしょうか?

データベースはSQL server2016です。
データベースへのアクセスは.NET framework標準のSqlConnectionで実施します。