首页 文章

依赖关系和Xml序列化

提问于
浏览
1

在个人应用程序中,我目前正在处理全局应用程序设置,它应该影响某些对象的行为方式,就架构而言,我认为它会创建一个不必要的依赖项来直接引用它们,例如:

public void Update()
{
    if (App.Settings.AutoCacheImages) CacheImages();
    ...
]

所以我更喜欢创建这样的界面:

public interface IFeedSettings
{
    bool AutoCacheImages { get; set; }
    ...
}

并确保我的对象在构造期间获得引用:

private IFeedSettings _settings;

public Feed(IFeedSettings settings)
{
    _settings = settings;
}

现在的问题是Xml-Serialization需要一个无参数的构造函数,那么最好的方法是什么才能在反序列化之后__11469_的所有实例都会引用我的全局设置?

(我有一个使用复合模式的分层文件夹/文件类数据结构)

1 回答

  • 0

    澄清:

    您的对象类型为 Feed . 您想序列化它,但不能使用非默认构造函数 . 相反,您可以为要发送的所有数据创建 FeedModel ,其参数较少,构造函数和公共属性 . 然后,您可以使用AutoMapper将数据从 Feed 实例快速传输到 FeedModel 实例并序列化模型类 .

相关问题