參考
MSDN
結論就是,如果單一欄位要篩選掉就用Not IN ```sql
select *
from [order]
where 序號 not in
(
select 訂單編號 from orderDetail
)
1 | 如果多個欄位要同時符合才篩選掉,就用Not Exists ```sql |
* 將div class="ms-breadcrumb-dropdownBox"旁邊的display:none修改掉
今天在研究Cache,意外發現好多觀念上的問題
有些東西還沒時間驗證跟消化,先筆記起來之後回來好好看一下
保哥 正確的使用 ASP.NET 的 Cache 物件
How to cache data in a MVC application
[ASP.NET MVC] 快取( Cache ) 的機制
.NET記憶體管理之弱式參考(Weak Reference)
Partial Output Caching in ASP.NET MVC
Google Drive新增修刪除後顯示訊息的方式,是在畫面上方跑出訊息一段時候後自動消失。
今天就來實作一下這個功能~
首先請先去下載bootstrap,這裡面有個alert的class個人覺得滿漂亮的,所以就拿這個來改吧!!
1 | /// <reference path="../jquery-1.9.1.min.js" /> |
1 | /* alert訊息 */ |
1 | //在這邊$('#BackStageBody')為要出現訊息方塊的區域,剛剛擴充的function會自動計算其寬高,並把訊息顯示在正確的位置 |
[![](http://2.bp.blogspot.com/-NBhxVa8AExI/UYoHecX2TrI/AAAAAAAADIE/G9Hvt_r7t_4/s1600/%E6%9C%AA%E5%91%BD%E5%90%8D.png)](http://2.bp.blogspot.com/-NBhxVa8AExI/UYoHecX2TrI/AAAAAAAADIE/G9Hvt_r7t_4/s1600/%E6%9C%AA%E5%91%BD%E5%90%8D.png)* ```csharp
//將命名空間改成System.Web.Mvc.Html,使用前不用修改~/Views/Web.config public static MvcHtmlString InsertHtmlTagActionLink(this AjaxHelper ajaxHelper,string linkText ,string actionName, string controllerName, AjaxOptions ajaxOptions) {
var lnk = ajaxHelper.ActionLink("[replaceme]", actionName, controllerName, ajaxOptions);
return MvcHtmlString.Create(lnk.ToString().Replace("[replaceme]", linkText));
}
}1 | * 使用方式如下 ```csharp |
1 | * **第三個範例,加入Img這個Tag** |
View中回傳Json格式的物件 ```csharp
var jsonObject = JsonConvert.SerializeObject(Repository.GetExhibitionList().OrderBy(o => o.CreateDate).ToArray());
return Json(jsonObject);
1 |
|
雖然我應該八萬年都不會用這兩個控制項,但今天幫人家改了一個莫名其妙的問題,就順便紀錄一下吧
必須寫在Page_Init,且MultiView在新增時不能放在Page_Load裡面,不然有時候會當掉….超怪!! ```vb
Protected Sub Page_Init(ByVal Sender As Object, ByVal e As EventArgs) Handles Me.Init
If Not Page.IsPostBack Then
Me.MultiViewControl.Controls.Clear()
Select Case Request.QueryString("Type")
Case "01"
Me.MenuTab.Items.RemoveAt(0)
Me.MenuTab.Items.RemoveAt(0)
Me.MenuTab.Items.RemoveAt(0)
Me.MenuTab.Items(0).Selected = True
Me.MultiViewControl.Controls.Add(View4)
Case "02"
Me.MenuTab.Items.RemoveAt(0)
Me.MenuTab.Items.RemoveAt(1)
Me.MenuTab.Items.RemoveAt(1)
Me.MenuTab.Items(0).Selected = True
Me.MultiViewControl.Controls.Add(View2)
Case Else
Me.MenuTab.Items.RemoveAt(3)
Me.MultiViewControl.Controls.Add(View1)
Me.MultiViewControl.Controls.Add(View2)
Me.MultiViewControl.Controls.Add(View3)
End Select
End If
End Sub
1 |
|
1 | select * from opendatasource('SQLNCLI10','Data Source=192.168.1.110;User ID=帳號;Password=密碼').DataBaseName.dbo.TableName |
strKey與strIV是用來加密的參數,可以替換任何字元但一定要8個字
//加密動作 private static string strKey = "toyo1234"; private static string strIV = "lovecode"; /// <summary>字串編碼</summary> /// <param name="strSource">原始字串</param> /// <returns>編碼後的結果字串</returns> public static string enCrypt(string strSource) { MemoryStream ms = new MemoryStream(); DESCryptoServiceProvider key = new DESCryptoServiceProvider(); CryptoStream encStream = new CryptoStream(ms, key.CreateEncryptor(Encoding.Default.GetBytes(strKey), Encoding.Default.GetBytes(strIV)), CryptoStreamMode.Write); StreamWriter sw = new StreamWriter(encStream); sw.WriteLine(strSource); sw.Close(); encStream.Close(); byte[] buffer = ms.ToArray(); ms.Close(); return Convert.ToBase64String(buffer); } /// <summary>字串解碼</summary> /// <param name="strSource">加密過的字串</param> /// <returns>解碼後的結果字串</returns> public static string deCrypt(string strSource) { MemoryStream ms = new MemoryStream(Convert.FromBase64String(strSource)); DESCryptoServiceProvider key = new DESCryptoServiceProvider(); CryptoStream encStream = new CryptoStream(ms, key.CreateDecryptor(Encoding.Default.GetBytes(strKey), Encoding.Default.GetBytes(strIV)), CryptoStreamMode.Read); StreamReader sr = new StreamReader(encStream); string val = sr.ReadLine(); sr.Close(); encStream.Close(); ms.Close(); return val; }
目前使用的是MVC4 + Entity Framework
**Q:**無法更新 EntitySet ‘xxxx’,因為它有 DefiningQuery,但是在
**A:**這是因為 Table 沒有 PK 的關係,所以 EF 就認定這是唯讀的 Table ,在 EDMX 的 Model 中的 Table 的欄位,加上 pk 後就正常了
**Q:**在設計資料庫時明明有指定欄位的預設值,可是每次透過 EF 新增資料時,該欄位的值卻是 null?
**A:**這是因為 DB 該欄位有 Default Value 而且又不允許 null,在 Visual Studio 中開啟 .edmx 檔案,在模型編輯器中點選 entity 的屬性,然後到屬性視窗中設定其 Default Value 屬性。參考下圖: