掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流
數(shù)據(jù)庫調(diào)整也可以遵循“開閉原則”的,本文我們就通過一個具體的實例來介紹這部分內(nèi)容,首先如如果在原表上改,牽動太大,所以就想到了面向?qū)ο蟮摹伴_閉原則”,在不改變原表的同時,添加一個附加表,即和原表有相同的主鍵,并且是一對一的關系(有時,如果一張表太復雜,字段太多,我們也可以用這個方法把復雜表進行拆分),添加后的結(jié)構(gòu)如下:

網(wǎng)站建設哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、微信小程序開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了甘德免費建站歡迎大家使用!
這樣在不改原表的基礎上,就完成的需求的變更。
我的需求改動還涉及到了跨域問題,用jsonp解決的,實例代碼如下:
另外一網(wǎng)站的CS端程序如下:
- public ContentResult SendEmailInsertInvite(string userid, string username, string _email)
- {
- string queryStr = Request.QueryString["jsonpcallback"];
- string res = "{success:false}";
- try
- {
- res = "{success:true}";
- #region 發(fā)邀請郵件,并將checkcode記錄和邀請表記錄插入
- Array.ForEach(_email.Split(','), i =>
- {
- CheckCodeRecord checkCodeRecord = new CheckCodeRecord
- //有幾個email地址,就產(chǎn)生幾個checkcode記錄
- {
- CheckCode = VCommons.Utils.GetNewGuid(),
- Description = "邀請送C幣"
- };
- UserInviteCCoin entity = _UserBaseServices.GetUserInviteCCoinByUserId(userid)
- ?? new UserInviteCCoin
- {
- UserID = userid,
- InviteID = VCommons.Utils.GetNewGuid(),
- };
- entity.IPAddr = checkCodeRecord.CheckCode;
- _UserBaseServices.AddInviteRecord(entity, checkCodeRecord);
- email.UserInviteEmail(entity, username, i);
- });
- #endregion
- }
- catch (Exception)
- {
- throw;
- }
- return Content(queryStr + "(" + res + ")");
- }
以上就是數(shù)據(jù)庫調(diào)整所遵循的“開閉原則”的相關知識的介紹,本文我們就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@!

我們在微信上24小時期待你的聲音
解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網(wǎng)交流