C# c语言中的类装入器#

C# c语言中的类装入器#,c#,visual-studio-2012,windows-8,windows-phone-8,C#,Visual Studio 2012,Windows 8,Windows Phone 8,我有两个不同的项目: 1) 名为BaseLibrary的库项目: public class DefaultProps { public virtual String getAppName() { return "XYZ"; } public virtual int getAppVersion() { return 1; } } cl

我有两个不同的项目:

1) 名为BaseLibrary的库项目:

public class DefaultProps
    {
        public virtual String getAppName()
        {
            return "XYZ";
        }

        public virtual int getAppVersion()
        {
             return 1;
        }
    }

class BaseSettings : DefaultProps
    {
        public virtual string getAppName()
        {
            return base.getAppName();
        }

        public virtual int getAppVersion()
        {
            return base.getAppVersion();
        }
    }
2) 具有库项目引用的子项目:

 using BaseLibrary;
    class AppSettings : DefaultProps
    {
        public override string getAppName()
        {
            return "ABC";
        }

    }
我正在进行
Windows Phone应用程序开发
,当我运行子项目时,我希望getAppName显示为
“ABC”
,而不是在BaseLibrary
“XYZ”中显示默认值。
而且,如果该属性未显示在子应用程序中,则应采用BaseLibrary中的默认属性值

在java中,我们使用
类加载器
来实现这一点,如何在C#中实现这一点,Visual Studio 2012

编辑 在MainPage.xaml.cs文件的BaseLibrary中

BaseSettings baseSettings = new BaseSettings ();
            string appName = baseSettings .getAppName();
            int appVersion = baseSettings .getAppVersion();

            App_Name.Text = appName;
            App_Version.Text = "" + appVersion;

你在哪里创建设置类的实例?如果你真的在Java中使用类加载器来解决这个问题,那么在我看来,你真的滥用了类加载器。即使在Java中,我也看不出类加载器有什么关系。听起来您是在核心库项目中创建
Settings
类的实例,而不是在子项目中创建
Settings
类的实例。考虑到这两种类型是不同的类型,如果给它们取不同的名称,几乎肯定会使代码更容易理解。另外,仅仅为了显式调用基方法而重写方法是没有意义的,而且您的方法不遵循.NET命名约定edit@KirkWoll那么如何在c#中实现这一点呢?