標籤

ASP.NET MVC (29) Visual C# (15) JQuery (10) Plugins (8) JQuery Plugins (6) JavaScript (6) MySQL (5) CSS (4) LinQ (4) Mac OS (4) CentOS (3) Design Pattern (3) Entity Framework (3) IIS (3) Python (3) Windows (3) php (3) Docker (2) LAMP (2) SQL Server (2) WCF (2) .NET (1) .NET Core (1) AWS (1) Browser (1) GIS (1) IE (1) Internet Security (1) Linux (1) Platform (1) React (1) SEO (1) Testing (1) VMware (1) Windows 7 (1) cookie (1) curl (1) laravel (1) phpBB (1) session (1) 中古屋 (1) 透天 (1) 閒言閒語 (1) 面試 (1) 鳥松 (1)

2011年8月25日 星期四

[ASP.NET MVC] 自訂模型繫結 (Custom Model Binder)

我想在ASP MVC中,是必須要了解的部分,尤其是"日期時間"資料型態應該是我們第一個會遇到的問題,關於日期時間:
http://www.hanselman.com/blog/SplittingDateTimeUnitTestingASPNETMVCCustomModelBinders.aspx

Stack Overflow也有:
較簡單的範例

有時間再來寫實際實作過程...



2011年8月22日 星期一

[JQuery] Json 資料放到select option 使用 Jquery



//使用Ajax取得Json格式的資料 格式為 List
$.ajax({
type: 'GET',
url: GetUrl,
data: { id: id },
dataType: "json",
success: function (data) {
$("#selectId").fillSelect(data);
}
});


//清除選取的下拉清單
$.fn.clearSelect = function() {
return this.each(function() {
if (this.tagName == 'SELECT')
this.options.length = 0;
});
}

//將下拉選項加入下拉清單
$.fn.fillSelect = function (data, selectId) {
return this.clearSelect().each(function () {
if (this.tagName == 'SELECT') {
var dropdownList = this;
$.each(data, function (index, optionData) {
var option = new Option(optionData.Text, optionData.Value);
if ($.browser.msie) {
dropdownList.add(option);
}
else {
dropdownList.add(option, null);
}
});
}
});
}




Reference:

[LinQ] LinQ To Entity 中 將int轉換為string

只要這樣做就可以了:

var items = from c in contacts

select new ListItem
{
Value = SqlFunctions.StringConvert((double)c.ContactId),
Text = c.Name
};
如果還有空白的問題 可以在Convert後加上.Trim()

Reference:

2011年8月9日 星期二

[Visual C#] 從MySQL轉換datetime欄位至SQL Server

在.NET中 Datetime欄位的範圍不用討論了,但是在SQL Server卻有分成datetime2 與 datetime,其中Datetime的範圍為1753~9999年datetime2 的範圍為0000/1/1~9999/12/31。

如果Entity Framework中使用的是Datetime,則是對應到SQL Server的datetime,這時候時間超出範圍就會丟出錯誤:將 datetime2 資料類型轉換成 datetime 資料類型時,產生超出範圍的值。陳述式已經結束。

解決方式:
1. 使用datetime,但是寫入時要檢查時間範圍,如果需要往前相容只能這樣。
2. 直接使用datetime2。



2011年8月1日 星期一

[CSS] IE6 IE7 Inline-block 的問題

只需在已經套用Inline-block的CSS區段中加入以下兩行即可,缺點是這兩行並不符合CSS標準,(CSS hack):

*zoom:1;/*IE6 and IE7 hack*/
*display:inline;/*IE6 and IE7 hack*/