zoukankan      html  css  js  c++  java
  • 【kooboo分析】 关于配置数据连接

      这个系统很值得学习其中的很多发光点,看了很久的代码,如果不写出来些东西,的确是对不起开发者的汗水。

    当然,从这里起有些偏颇,先从点开始吧。 然后再从整体架构来说吧。

      其中数据方面,作者考虑的的确是细腻,如果使用了配置文件,就按配置文件走,如果没有配置文件,就按默认配置文件走,如果默认配置文件也没有,就使用SQLExPress。

    其实在项目中,这样做是没有太大必要的,但是,这是对于一个开源软件,对于很多懒得下载,附加数据的二次开发者来说,的确是方便的很。

    下面上代码片段。

    [DataContract]
        public class SiteOnSQLServerSettings
        {
            [System.Xml.Serialization.XmlIgnoreAttribute]
            private static SiteOnSQLServerSettings instance = null;
            static SiteOnSQLServerSettings()
            {
                string settingFile = GetSettingFile();
                if (File.Exists(settingFile))
                {
                    instance = DataContractSerializationHelper.Deserialize<SiteOnSQLServerSettings>(settingFile);
                }
                else
                {
                    instance = new SiteOnSQLServerSettings()
                    {
                        ConnectionString = "Server=.\\SQLExpress;Database=Kooboo_CMS; Trusted_Connection=Yes;"
                    };
                    Save(instance);
                }
            }
            public static void Save(SiteOnSQLServerSettings instance)
            {
                string settingFile = GetSettingFile();
                DataContractSerializationHelper.Serialize(instance, settingFile);
            }
            private static string GetSettingFile()
            {
                return Path.Combine(Kooboo.Settings.BinDirectory, "SiteOnSQLServerSettings.config");
            }
            public static SiteOnSQLServerSettings Instance
            {
                get
                {
                    return instance;
                }
                set
                {
                    instance = value;
                    Save(instance);
                }
            }
            [DataMember]
            public string ConnectionString { get; set; }
        }
     
  • 相关阅读:
    Web API 2 入门——使用ASP.NET Web API和Angular.js构建单页应用程序(SPA)(谷歌翻译)
    Web API 2 入门——创建ASP.NET Web API的帮助页面(谷歌翻译)
    Web API 2 入门——使用Web API与ASP.NET Web窗体(谷歌翻译)
    Web API 2 入门——Web API 2中的操作结果(谷歌翻译)
    Web API 2 入门——Web API 2(C#)入门(谷歌翻译)
    WebBrowser 中遍历所有的frames
    浏览器js console对象
    Vi Command 【转载】
    JS调用BHO
    iframe空文档中写入内容
  • 原文地址:https://www.cnblogs.com/zbw911/p/2859310.html
Copyright © 2011-2022 走看看