Visual Studio Plugin – vsvim 設定指標顏色

由 andy 發表於 八月 20, 2012 / 尚無評論

基於使用vim的習慣,在Visual Studio也有外掛可以使編輯器可以模擬vim的操作。

在Visual Studio 2008推薦使用ViEmu 而在2010擴充套件就有免費的vsvim。在預設的情況下,其實都沒有任何問題。

但是當您使用了黑底(Dark)背景的style之後會發現指標Cursor不見了,其實不是不見只是預設是黑色。

此時只要變更一些小小的設定即可如下圖:

 

繼續閱讀 »

ASP.NET MVC 3 + AppHarbor 無痛進入新時代

由 andy 發表於 九月 24, 2011 / 4 則評論

今天分享這篇文章是希望可以有更多人來玩 ASP.NET MVC !!

一直以來我覺得ASP.NET 對於一些原本是OpenSource 開發者轉進微軟Solution的人來說,最討厭的就是;一個可以讓自己開心測試玩樂的環境難求!在銀彈不足的情況下常常需要東找西找.至於找什麼大家心裡明白就好XD 外加大多數的公司老闆不太會因為你的好奇心就貿然用新版的軟體,Framework,所以很多時候是自己有心可是大環境有點無奈,更多的情況應該是就算Express版本和一些免費的SDK都可以玩.但是玩玩之後要分享給朋友真的是好麻煩. 如果你又想使用MSSQL那就更討厭了今天發現了這個方便的服務配合整理一些前輩的文章希望大家也可以來玩。

何謂AppHarbor ?

 AppHarbor 是一個PaaS服務,如果你還不明白這是啥可以參考 Wiki 簡單說明 ! 如果你需要的是一些實例那可以參考這篇

在稍微理解一些前因後果之後,馬上就可以先來註冊一下。

比起微軟本身的Azure我覺得這個服務實在是單純超多的。就是輸入資料註冊完之後建立一個App

繼續閱讀 »

JSON與JSON NET

由 andy 發表於 九月 15, 2011 / 尚無評論

何謂JSON

JSON(JavaScript Object Nonation) 是一種輕量級的[資料交換語言],以純文字為基底儲存和傳送的資料格式.說的白話一點是一種定義好用來做資料交換的格式(還是很饒舌),那就是一種功能上類似XML的東西.還無法參透的話請參考這篇。而JSONNET講的粗淺一點就是一隻用來把NET物件轉成JSON字串或者把JSON字串轉成物件的DLL

官方介紹:

Json.NET makes working with JSON formatted data in .NET simple. Quickly read and write JSON using LINQ to JSON or serialize your .NET objects with a single method call using the JsonSerializer.

這個組件使.NET可以更簡單快速的使用JSON格式的資料,並且使用LINQ去撈資料或者序列化(產生JSON字串)您的.NET物件

官方手冊

下載

整理使用筆記 : 

1. 下載後直接將/bin底下的dll加入參考,目前4版有對應2.0 3.5 後面沒有版號的目錄是4.0

2. 匯入命名空間

 

using Newtonsoft.Json;

using Newtonsoft.Json.Linq;

 

3. 物件轉JSON

第一種:傳統強型別直接轉

//實踐一個書本類別並帶入資料

 

TradtionBook tbook = new TradtionBook { Name = "OlderBook", Author = "AndyYou", ISBN = 123456, PubDate = new DateTime(2011,9,9) };

Console.WriteLine(JsonConvert.SerializeObject(tbook)); // 這樣就轉好了

繼續閱讀 »

監測MSSQL執行的效能與時間

由 andy 發表於 九月 1, 2011 / 尚無評論

 

SQL端測試

DECLARE @Begin DATETIME
DECLARE @End DATETIME
SET @Begin = GETDATE()

–執行SQL CmdStart
Select name,sum(payment)as pay From member group by name having sum(payment)>40 
–SQL CmdEnd

SET @End = GETDATE()
SELECT  DATEDIFF(millisecond, @Begin, @End) AS ExecutionTime
 
C# 程式端測試
        //宣告觀察物件 提供一組方法和屬性 (Property),您可以使用這些方法和屬性,精確地測量已耗用時間。
        System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();

        cmd.Connection = cn;
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "SP_UpdateMember";
        SqlParameter Name = new SqlParameter("@Name",TboxName.Text.Trim().ToString());
        SqlParameter Id = new SqlParameter("@ID", Convert.ToInt32(TboxId.Text.Trim()));
        cmd.Parameters.Add(Name);
        cmd.Parameters.Add(Id);
        try
        {
            watch.Start();
            cn.Open();
            cmd.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
        }
        watch.Stop();
        Response.Write(watch.ElapsedMilliseconds); //單位毫秒

CKeditor in ASP.NET

由 andy 發表於 七月 29, 2011 / 尚無評論

CKeditor in ASP.NET



1. 至官方下載 http://ckeditor.com/download 



2. 解開壓鎖檔後刪除不必要的檔案 _samples _source 目錄以減少檔案容量。



3. 複製該目錄至您的.NET專案底下



4. 在<head></head>中間引入Ckeditor 的JS 核心 : 
<script type="text/javascript" src="ckeditor/ckeditor.js"></script>



在HEAD中如下:



<head runat="server">

    <title>HTML Editor</title>

<script type="text/javascript" src="ckeditor/ckeditor.js"></script>

</head>



5. 在Form中間插入Textbox物件 或切換到原始碼頁面插入  注意: ID可以自行設定

<asp:TextBox ID="tbContent" name="tbContent" runat="server" TextMode="MultiLine"></asp:TextBox>



6. 接著在上面那段程式碼下方插入下面這段JS



<script type="text/javascript">

     //CKEDITOR.replace('tbContent');

     CKEDITOR.replace('<%=tbContent.ClientID.Replace("_","$") %>',{toolbar:'Andybar'});

</script>


重點程式註解 : 

CKEDITOR.replace('<%=[物件ID].ClientID.Replace("_","$") %>',{toolbar:'[ 工具列的屬性 可設定 Basic 或 Full ]});

繼續閱讀 »

ASP.NET 應懂的相關基礎與簡答

由 Derek 發表於 七月 22, 2011 / 尚無評論

 

 

C#部份

0. 基礎語法

    基本型別,時間物件, 時間比較, 字串, 整數, 浮點數  (常用語法整理),生命週期,web.config 連線字串設定

bool:true/false

string: ""

string.Format("{0}{1}",var1,var2);

decimal price = 120M  //小數以下可達28位

float,byte,char

int: int? age = null; //可允許空值

命名規則: A-Z a-z _

列舉關鍵字 : protected, private, public, void,class,

     DateTime.Now

DateTime.Now.DayOfWeek; //星期幾

DateTime.Now.DayOfWeek.GetHashCode(); //傳回雜湊碼 星期天=>0 ~ 星期六=>6 

DateTime Dt = new DateTime(2011,01,01,12,00,00);   

DateTime EndDt = new DateTime(2011,07,31,12,00,00);

DateTime.Now.CompareTo(EndDt);// 現在時間 大於EndDt => 1  相等=>0 小於=>-1

 

路徑: Request.PhysicalApplicationPath; 實體路徑

      Request.ApplicationPath 應用程式路徑

加密: 

System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile("123456", "MD5");

 

繼續閱讀 »

ASP NET 匯出PDF

由 andy 發表於 六月 13, 2011 / 尚無評論

詳細的教學請參考 這裡  本篇將整個說明的部份範例整合並做詳細的註解,分享給有需要的人。

<%@ Import Namespace="System.IO" %>

<%@ Import Namespace="iTextSharp.text" %>

<%@ Import Namespace="iTextSharp.text.html.simpleparser" %>

<%@ Import Namespace="iTextSharp.text.pdf" %>

<%@ Import Namespace="System.Collections.Generic" %>



protected void Button1_Click(object sender, EventArgs e)

    {

        Document doc = new Document(PageSize.A4,50,50,80,50);//宣告一個文件,設定文件大小(Margin:左,右,上,下)

        MemoryStream Memory = new MemoryStream();//使用記憶體暫存將內容擷取至doc

        PdfWriter PdfWriter = PdfWriter.GetInstance(doc, Memory);//使用PdfWriter 將doc的內容導入Memory 並繪製成pdf

        //各種字型設定 BaseFont設定字型

        BaseFont bfChinese = BaseFont.CreateFont(Request.PhysicalApplicationPath+@"font\MSJH.TTF", BaseFont.IDENTITY_H,         BaseFont.NOT_EMBEDDED);

        //↑中文字須配合中文字型 將中文字抓到目錄下

        //設定字型其他樣式

        Font ChFont = new Font(bfChinese, 12);

        Font ChFont_blue = new Font(bfChinese, 15, Font.NORMAL, new BaseColor(51, 0, 153));

        //Chunk為文字片段簡單說就是string 不會自行斷行 ("內容",字型物件)

        Chunk c0 = new Chunk("<c0>第一句</c0>",ChFont);

        //Phrase為句子 可以將chunk彙整至Phrase 但Phrase也是句子也不會斷行需透過 \n 或 Environment.NewLine

        Phrase p1 = new Phrase(c0);

        

        Chunk c1 = new Chunk("<c1>第二句</c1>", ChFont);

        Chunk c2 = new Chunk("<c2>第三句 </c2>", ChFont);

        //透過chunk將個別的文字先寫入後再透過Phrase 的Add將個別的chunk加入

        Phrase p2 = new Phrase(c1);

        p2.Add(c2);

        //段落 可以設定樣式如下

        Paragraph pg = new Paragraph();

        pg.Add(p1);

        pg.Add(p2);

        pg.Alignment=1;//設定左右對齊 0:左 1:置中 2:右 

        pg.FirstLineIndent = 20f;//段落首句縮排

        pg.SetLeading(0.0f, 2.0f);//設定行句

繼續閱讀 »

ASP.NET GridView,ListView 超連結 Get 兩個以上參數

由 andy 發表於 六月 12, 2011 / 尚無評論

 

1. 使用string.Format 來將Eval的資料繫結帶到網址後面對應的位置

<ItemTemplate>
<asp:HyperLink ID="HyperLinkTitle" runat="server" Text='<%# Bind("title") %>' NavigateUrl='<%# string.Format("getpage.aspx?i={0}&l={1}", Eval("欄位_1"), Eval("欄位_2")) %>' ></asp:HyperLink>

</ItemTemplate> 

2. 使用HyperLinkField欄位

<Columns>
    <asp:BoundField DataField="date" DataFormatString="{0:d}" HeaderText="時間"  SortExpression="date" />
   <asp:HyperLinkField DataNavigateUrlFields="欄位_1,欄位_2" 
          DataNavigateUrlFormatString="news.aspx?l={1}&i={0}" DataTextField="title"  HeaderText="標題" />
</Columns>

 

繼續閱讀 »