私はWeb.Configファイルにカスタムセクションを持ち、configSourceによって別の.configファイルを参照します。スキーマ用にXSDを使用して.csファイルを生成しました。生成されたクラスを使用して設定を逆シリアル化する方法.GetSection()メソッドを使用してコンフィグレーションをロードしようとすると、クラスがConfigurationSectionから実装する必要があるというエラーが表示されます。 xsdを使用してクラスを生成したので、ConfigurationSectionまたはConfigurationElementから継承されませんでした。前もって感謝します!!XSDで生成されたクラスを使用してweb.configカスタムセクションをデシリアライズ
0
A
答えて
0
私は、ファイル名を取得するためにConfigurationSectionからクラスを実装し、XSDツールによって生成されたクラスを使用してXMLSerializerを使用して逆直列化しました。ここではサンプルです:
namespace mycontrol
{
public class ConfigurationSection : System.Configuration.ConfigurationSection
{
//Configuration is the type generated by XSD for my schema element Configuration
private static Configuration _config;
/// <summary>
/// static method to load config section and deserialize config
/// </summary>
/// <returns></returns>
private static Configuration GetConfig()
{
if (_config == null)
{
ConfigurationSection configSection = (ConfigurationSection)ConfigurationManager.GetSection("SearchControlsConfig") as ConfigurationSection;
if (!string.IsNullOrEmpty(configSection.ExternalConfigSource))
{
string strFilePath = configSection.ExternalConfigSource;
if (!File.Exists(strFilePath))
{
strFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, strFilePath);
if (!File.Exists(strFilePath))
return null;
}
using (FileStream fs = new FileStream(strFilePath, FileMode.Open, FileAccess.Read))
{
XmlSerializer config = new XmlSerializer(typeof(Configuration));
_config = (Configuration)config.Deserialize(fs);
}
}
}
return _config;
}
/// <summary>
/// Attribute to specify config source file in custom config section
/// </summary>
[ConfigurationProperty("externalConfigSource", DefaultValue = "", IsRequired = false)]
public string ExternalConfigSource
{
get
{
return this["externalConfigSource"] as string;
}
}
}
}
カスタム設定を指定して、それがのConfigurationManagerで予約されているので、私は、私の財産としてconfigSource属性を使用することはできません。
関連する問題
- 1. C#生成されたXsd生成クラスに対してXMLを検証
- 2. MSDeployを使用してWeb.configカスタムセクションを変換する方法
- 3. Web.Configのカスタムセクション/コレクション
- 4. XJC複数のXSD - > "エピソード"を使用したクラス生成
- 5. XSD生成クラスには、デシリアライズ後のXIncludeコンテンツは含まれていません。
- 6. XSDで生成されたクラスを使用してVBでXMLを読み取る例
- 7. XSD生成クラスを使用してC#でXMLを逆シリアル化しますか?
- 8. 生成されたクラスへのSOAPレスポンスのデシリアライズC#
- 9. WADL /生成されたXSDとJerseyを使用したコントラクトファーストのアプローチ
- 10. Java(Jaxb)でxsdからクラスを生成
- 11. .NETクラス用のXSDスキーマの生成
- 12. XSD.exeを使用して複数のXSDスキーマからC#クラスを生成する
- 13. XSDからJAXBを使用して要素のJavaクラスを生成
- 14. IntobiでGradleを使用してProtobufで生成されたクラスをインポート
- 15. XSDからのタイプ/クラス用のパラメータ化されたコンストラクタの生成
- 16. XSDスキーマからクラスを生成する
- 17. xsdからjaxb groovyクラスを生成
- 18. svcutilを使用してクライアントプロキシのxsdファイルを生成する
- 19. Javaを使用してXSDスキーマからxmlを生成する
- 20. XSDファイルを使用してXMLファイルを生成する
- 21. XSDファイルは、JAXBを使用してネストされた静的クラスを作成します。
- 22. XSDを使用してJavaクラスを生成する制限が組み込まれています
- 23. XSDスキーマを使用して 'storeToXML'によって生成されたJavaプロパティを記述する
- 24. XSDからプログラマチックに生成されたXMLエディタ用のJavascriptライブラリ
- 25. NSFetchedResultsControllerでカスタムセクションを使用しますか?
- 26. xsd validation againts xsdがクラスレベルの検証を生成しました
- 27. 重複したクラスエントリを持つ複数のxsdスキーマを使用したクラスの生成
- 28. fastJSONを使用してデシリアライズされたパーツデータが破損する
- 29. XSD2CODEで生成されたC#クラスの使用方法
- 30. Javadocで生成されたpojo JIBXにXSDドキュメントを追加したい