Пример #1
0
        // ---------------------------------------------------------------------------------------------

        /// <summary>
        /// 连接字符串: key1=value1;key2=value2;key3=...
        /// </summary>
        public XConnectionBuilder SetConnectionStrings(string connStr)
        {
            if (connStr.IsBlank())
            {
                throw XConfig.EC.Exception(XConfig.EC._098, "连接字符串 connStr 不能为空!");
            }
            if (!(connStr.Contains("=") && connStr.Contains(";")))
            {
                throw XConfig.EC.Exception(XConfig.EC._099, "连接字符串 connStr 必须是 key=value; 的格式!");
            }
            KvPairs.Add(connStr);
            return(this);
        }
Пример #2
0
 /// <summary>
 /// connection string 片段: key1=value1;key2=value2;key3=...
 /// </summary>
 public XConnectionBuilder SetExtraConnectionStrings(string partConnStr)
 {
     if (partConnStr.IsBlank())
     {
         throw XConfig.EC.Exception(XConfig.EC._145, "connection string 片段 partConnStr 不能为空!");
     }
     if (!(partConnStr.Contains("=") && partConnStr.Contains(";")))
     {
         throw XConfig.EC.Exception(XConfig.EC._148, "connection string 片段 partConnStr 必须是 key=value; 的格式!");
     }
     KvPairs.Add(partConnStr);
     return(this);
 }
Пример #3
0
        public TEntity Get <TEntity>(string key)
            where TEntity : class, new()
        {
            lock (_locked)
            {
                if (KvPairs.Any(_pair => _pair.Key == key))
                {
                    var first      = KvPairs.FirstOrDefault(_pair => _pair.Key == key);
                    var valueBytes = first?.Value;
                    var jsonString = Encoding.UTF8.GetString(valueBytes);

                    var entity = JsonConvert.DeserializeObject(jsonString, typeof(TEntity));

                    return(entity as TEntity);
                }
            }

            return(null);
        }