數(shù)據(jù)庫(kù)調(diào)整所遵循的“開閉原則”簡(jiǎn)介
作者:張占嶺
本文我們以一個(gè)實(shí)例介紹了數(shù)據(jù)庫(kù)調(diào)整可以遵循的“開閉原則”的相關(guān)知識(shí),希望本次的介紹能夠?qū)δ兴鶐椭?/div>
數(shù)據(jù)庫(kù)調(diào)整也可以遵循“開閉原則”的,本文我們就通過(guò)一個(gè)具體的實(shí)例來(lái)介紹這部分內(nèi)容,首先如如果在原表上改,牽動(dòng)太大,所以就想到了面向?qū)ο蟮?ldquo;開閉原則”,在不改變?cè)淼耐瑫r(shí),添加一個(gè)附加表,即和原表有相同的主鍵,并且是一對(duì)一的關(guān)系(有時(shí),如果一張表太復(fù)雜,字段太多,我們也可以用這個(gè)方法把復(fù)雜表進(jìn)行拆分),添加后的結(jié)構(gòu)如下:
這樣在不改原表的基礎(chǔ)上,就完成的需求的變更。
我的需求改動(dòng)還涉及到了跨域問(wèn)題,用jsonp解決的,實(shí)例代碼如下:
- <script>
- $(function() {
- $("#btn").click(function() {
- $.ajax({
- type: "GET",
- dataType: "jsonp",
- jsonp: "jsonpcallback",
- data: { userid: '<%=Standard.ClientHelper.Current.UserInfo.ID %>',
- username: '<%=Standard.ClientHelper.Current.UserInfo.UserName %>',
- _email: $("#email").val() },
- url: "http://sso.c2cedu.com/Register/SendEmailInsertInvite",
- success: function(data) {
- //填寫用戶激活后送C幣的邏輯
- if (data.success == true)
- alert("邀請(qǐng)成功");
- else
- alert("邀請(qǐng)失敗");
- }
- });
- });
- });
- </script>
另外一網(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ā)邀請(qǐng)郵件,并將checkcode記錄和邀請(qǐng)表記錄插入
- Array.ForEach(_email.Split(','), i =>
- {
- CheckCodeRecord checkCodeRecord = new CheckCodeRecord
- //有幾個(gè)email地址,就產(chǎn)生幾個(gè)checkcode記錄
- {
- CheckCode = VCommons.Utils.GetNewGuid(),
- Description = "邀請(qǐng)送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ù)庫(kù)調(diào)整所遵循的“開閉原則”的相關(guān)知識(shí)的介紹,本文我們就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@!
【編輯推薦】
責(zé)任編輯:趙鵬
來(lái)源:
博客園


相關(guān)推薦




