export project under subversion

by Neon Quach 29. May 2010 19:52

Problem: Bạn đang có 1 dự án được quản lý bằng subversion control, sau khi hoàn thành bạn muốn deploy lên server mà không phải kèm theo các file .svn

Solution: Đơn giản hơn việc phải tìm các file nằm trong thư mục .svn và xóa chúng đi, TortoiseSVN cho phép chúng ta export project under source control



Sau khi export xong chúng ta sẻ có 1 project không bao gồm các file .svn, giờ thì có thể up chúng lên host

Hope this help!

Tags: ,


Categories:

Search controls within VS 2010 Beta 2 Toolbox

by Neon Quach 29. October 2009 02:24

I installed Visual Studio 2010 beta 2 yesterday, I was surprised that the new feature of VS2010 B2 allowed us to search web server controls within VS toolbox. To do a search, we just simply type which controls we want to search in the VS Toolbox.

You can hit Backspace if you mistyped a character, or Tab to go to the next match for the current string.  To cancel the search, you can hit Escape, move the selection, or click on another window.

Happy programming

Tags: , ,


Categories: visual studio 2010 | visual studio tips

Retrieving SQL Server Runtime Statistics

by Neon Quach 21. October 2009 01:56

Retrieving SQL Server Runtime Statistics

You want to get information about your connection to SQL Server, including bytes sent, bytes received, connection time, and execution time.


The .NET Framework 2.0 added support for runtime statistics with the SQL Server data provider. Runtime statistics expose information about processing queries in the database.


You must enable statistics by setting the StatisticsEnabled property of the SqlConnection object to true after the connection has been created. Once statistics are enabled, they can be retrieved into an IDictionary instance using the RetrieveStatistics() method of the SqlConnection object. The values in the dictionary are the statistic counter values, and are all of the long data type. The .NET Framework 3.5 SQL Server data provider makes 18 statistics available. The ResetStatistics() method of the SqlConnection object resets the counters.

All statistics are gathered on a per-connection basis and are valid for the current point in time. If you continue using the connection after retrieving statistics, you have to retrieve statistics again to get the current values.

For demo purpose, I just create C# console application and VB.NET.

Here is my code:

        static void Main(string[] args)

        {

            using (SqlConnection conn = new SqlConnection())

            {

                conn.ConnectionString = @"Data Source=localhost\sqlexpress;" +

                        "Integrated Security=SSPI;Initial Catalog=Northwind";

                conn.StatisticsEnabled = true;

                // do some work with the connection

                SqlDataAdapter da =

                        new SqlDataAdapter("SELECT * FROM Customers", conn);

                DataTable dt = new DataTable();

                da.Fill(dt);

                // get the statistics

                IDictionary d = conn.RetrieveStatistics();

                // move the dictionary keys to an array

                string[] keys = new string[d.Count];

                d.Keys.CopyTo(keys, 0);

                // iterate over the dictionary displaying the key-value pair

                for (int i = 0; i < d.Count; i++)

                    Console.WriteLine("{0}\t{1}",

                            keys[i], (long)d[keys[i]]);

            }

            Console.WriteLine(Environment.NewLine + "Press any key to continue.");

            Console.ReadKey();

        }

        Using SqlCon As New SqlConnection

            SqlCon.ConnectionString = "Data Source=localhost\sqlexpress;" _

                       + "Integrated Security=SSPI;Initial Catalog=Northwind"

            SqlCon.StatisticsEnabled = True

            Dim dap As New SqlDataAdapter("SELECT * FROM Customers", SqlCon)

            Dim dt As New DataTable

            dap.Fill(dt)

            Dim dic As IDictionary = SqlCon.RetrieveStatistics()

            Dim key As String() = New String(dic.Count) {}

            dic.Keys.CopyTo(key, 0)

 

            For i As Integer = 0 To dic.Count - 1

                Console.WriteLine("{0}" & vbTab & "{1}", key(i), DirectCast(dic(key(i)), Long))

            Next

 

            Console.Write(Environment.NewLine + "Press any key to continue.")

            Console.Read()

 

        End Using

The solution creates a Connection and enables statistics by setting the EnableStatistics property of the Connection object to true. A DataAdapter is created and used to fill a DataTableNorthwind. Statistics are retrieved into a dictionary using the RetrieveStatistics() method of the Connection object and then output to the console. with all records in the Cusomers table in
Northwind. Statistics are retrieved into a dictionary using the RetrieveStatistics() method of the Connection object and then output to the console.


Regards,

StatisticsEnabled.rar (62.54 kb)

Tags: , , , ,


Categories: vs .net | c# | vb.net | visual studio tips

How to generate a strong password

by Neon Quach 10. October 2009 05:44

How to generate a strong password

I remember that when I became a member on some website, they didn't let me choose my password, instead of giving me a random password.

Here is my way that I worked with ASP.NET.

 

For the demo purpose, I  just use console application in Visual Studio.

 

1. Create a new Project with C# or VB.NET application.

2. Add System.Web reference to your VS project.

3. Call Membership.GeneratePassword method.

C#
string password = Membership.GeneratePassword(10, 0);

Console.WriteLine(password);
VB.NET
Dim password As String = Membership.GeneratePassword(10, 0)
Console.Write(password)

 

This method accepts 2 parameters which generates a random password of the specified length. and return a random password of the specified length. The length parameter is a nunber of characters in the generated password, it must be between 1 and 128 characters, and the second parameter is numberOfNonAlphanumericCharacters which is the minimum of punctuation characters in the generated password.

 

Happy programing!

QuachNguyen

Tags: ,


Categories: vs .net | c# | vb.net

out and ref keyword in C#

by Neon Quach 10. October 2009 04:33

Tham số out và ref được sử dụng để trả về giá trị trong cùng biến, mà bạn truyền vào như là 1 tham số của phương thức. Cả 2 từ khoá này rất hửu dụng khi bạn cần phải trả về hơn 1 giá trị.

Đối với từ khoá out:
 Từ khoá out có thể được sử dụng để trả về giá trị cùng với biến được truyền vào,như là  tham số của phương thức,bất kỳ những thay đổi nào trên tham số cũng sẻ ảnh hưởng đến biến.

public class mathClass
{
public static int TestOut(out int iVal1, out int iVal2)
{
iVal1 = 10;
iVal2 = 20;
return 0;
}
public static void Main()
{
int i, j; // Biến này không cần khởi gián giá trị
Console.WriteLine(TestOut(out i, out j));
Console.WriteLine(i);
Console.WriteLine(j);
}
}


Từ khoá ref,khi được truyền vào phương thức như 1 tham số, nó sẻ tham chiếu tới cùng biến được truyền vào, bất kỳ thay đổi nó cũng sẻ ảnh hưởng đến biến.

namespace TestRefP
{
using System;
public class myClass
{
public static void RefTest(ref int iVal1 )
{
iVal1 += 2;
}
public static void Main()
{
int i; //Phải khởi gián giá trị cho biến
i = 3;
RefTest(ref i );
Console.WriteLine(i);
}
}
}


.....
Regards

Tags:


Categories: vs .net | c# | vb.net

Giải phương trình bậc nhất bằng Console C#

by Neon Quach 10. October 2009 04:26

Chắc hẳn ai cũng đả từng giải phương trình bậc nhất bằng các ngôn ngử lập trình chẳng hạn như : pascal , C , C++ ... thậm chí cả C# , nhưng nói chung để giải 1 bài toán phương trình bậc nhất là không khó , nhưng nó có 1 quy luật chung , nếu các bạn nắm rỏ quy luật ấy thì bất kỳ ngôn ngử lập trình nào , từ mới cho đến củ , mình cũng thực hiện được .

 Phương trình bậc nhất có dạng : ax + b = 0 

Thuật toán giải phương trình bậc nhất : ax + b = 0, ta đi qua các bước:

Bước 1: Nhập vào 2 hệ số a và b . ( kiểm tra giá trị nhập ) 

Bước 2: Xét điều kiện a = 0
hay không ?

Nếu đúng là a = 0, thì đi đến bước 3. Nếu không, nghĩa là a khác 0, thì đi đến bước 4.

Bước 3 : Tính nghiệm cho phương trình ( x=-b/a ) . Đi đến bước 5 .

Bước 4 : Kiểm tra b = 0 hay không ?

Nếu b = 0, thì báo phương trình có vô số nghiệm. Ði đến bước 5.
Nếu b <> 0, thông báo phương trình vô nghiệm. Ði đến bước 5.



Bước 5 : Dừng chương trình , xem kết quả .



Thể hiện bằng ngôn ngử C# : Mở 1 dự án Console , tên tùy chọn .

using System;
namespace
PhuongTrinhBacNhat
{
class
Program
{
static void Main(string
[] args)
{
// Trinh bay 2 bien a va b luu 2 giatri a va b
// Nhan ket qua tu nguoi dung nhap vao
Console.Write("Nhap vao he so a :"
);
int a = int.Parse(Console
.ReadLine());
Console.Write("Nhap vao he so b :"
);
int b = int.Parse(Console
.ReadLine());
if
(a == 0)
  if
(b == 0)
    Console.WriteLine("Phuong trinh co vo so nghiem"
);
  else
    Console.WriteLine("Phuong trinh vo nghiem "
);
else
{
int
ketqua = -b / a;
Console.WriteLine("Phuong trinh co nghiem la x = {0}"
,
ketqua.ToString());
}
Console
.ReadKey();
}
}
}


Để chắc chắn rằng là bắt buộc người dùng phải nhập vào 1 số nguyên , còn không không thì khi người dùng nhập vào là chuổi ký tự thì thông báo lổi . Ta dùng cú pháp try ....catch như sau :

using System;
namespace
PhuongTrinhBacNhat
{
class
Program
{
static void Main(string
[] args)
{
// Trinh bay 2 bien a va b luu 2 giatri a va b
// Nhan ket qua tu nguoi dung nhap vao
int
a = 0;
int
b = 0;
try
{
Console.Write("Nhap vao he so a :"
);
a = int.Parse(Console
.ReadLine());
Console.Write("Nhap vao he so b :"
);
b = int.Parse(Console
.ReadLine());
}
catch
{
Console.WriteLine("Gia tri nhap khong hop le "
);
return
;
}
if
(a == 0)
if
(b == 0)
Console.WriteLine("Phuong trinh co vo so nghiem"
);
else
Console.WriteLine("Phuong trinh vo nghiem "
);
else
{
int
ketqua = -b / a;
Console.WriteLine("Phuong trinh co nghiem la x = {0}"
,
ketqua.ToString());
}
Console
.ReadKey();
}
}
}


Chạy chương trình ( F5 ) , nhập a và b và nhận kết quả .

Tags:


Categories: vs .net | c# | vb.net

15 trang web không thể thiếu dành cho web developers và web designer

by Neon Quach 27. July 2009 22:00
Tạo một trang web không phải là một nhiệm vụ dễ dàng, nhưng có một vài công cụ có thể chắc chắn làm cho cuộc sốngngười phát triển hay thiết kế dễ dàng hơn. Trong bài viết này, tôi đã biên soạn 15 trang web rất hữu ích mà bất kỳ người phát triển web hoặc các thiết kế webnên bookmarked.

ColorCombos
color combos

Khi thiết kế một trang web, một trong những cái đầu tiên(và quan trọng nhất) là bước chọn một bảng màu. Combos cho phép bạn duyệt qua hàng ngàn màu sắc khác nhau cho các kết hợp của bạn nhận được cảm hứng cho thiết kế. Màu sắc có thể được browsed theo màu sắc.
Ai không biết các văn bản Lorem Ipsum vô cùng phổ biến? Văn bản này sẽ được sử dụng trên toàn thế giới của webdesigners vẽ lại để mô phỏng những thực tế của văn bản trên một thiết kế. Lipsum.com cho phép bạn tạo các đoạn văn Lorem Ipsum như mong muốn, nhanh chóng và đơn giản.
Visit LIpsum.com

What the font?



Bạn vừa mới thấy 1 logo hay website mà sử dụng font rất riêng biệt, bạn thích nó, bạn muốn sử dụng chúng cho thiết kế của bạn, nhưng bạn không biết tênfont của chúng. Tại thời điểm này, bạn chỉ có hai giải pháp: Tìm kiếm font trong hàng giờ hoặc sử dụng dịch vụ font (What the font service)

What's the font; cho phép bạn tải lên một biểu tượng hoặc một hình ảnh có chứa một phông chữ, và nó sẽ cho bạn biết là nó có phông chữ. Kết quả là không thể tưởng tượng được.
Visit What the font

ConvertIcon



Favicons là phải có cho bất kỳ trang web, bởi vì hầu hết là trên các trình duyệt hiện đại như ví dụ như trình duyệt Firefox, nó sẽ được hiển thị cùng với các tên trang web trong tab. Nó cũng được sử dụng trong các dấu (bookmark). Các định dạng Favicon phổ biến là: .png, nhưng vấn đề của nó là sẻ không hiển thị trên trình duyệt Internet Explorer, may mắn thay, có ConvertIcon một dịch vụ trực tuyến miễn phí cho phép bạn tải lên một hình ảnh và nhận được một tập tinIco, để duy trì tính tương thích với trình duyệt của Microsoft.
Visit ConvertIcon

BgPatterns



Patterns là nền tảng chắc chắn một trong những xu hướng thiết kế webhiện tại.
Với BgPatterns.com, bạn sẽ có thể duyệt qua nhiều lựa chọn các mẫu mà bạn có thể tự do sử dụng trên thiết kế của bạn.
Visit BgPatterns

HTML Encoder



Bạn muốn hiển thị code lên trang web của bạn, trong thực tế nếu bạn muốn hiển thị dấu < thì code của bạn sẻ là &lt; Bạn sẻ mất thời gian nếu như đọan code mà bạn muốn hiển thị trở nên nhiều lên, hãy để cho HTML Encoder giúp bạn.
Visit HTML Encoder

Xenocode Browsers



Theo tôi, Xenocode trình duyệt là công cụ kiểm tra trang web của bạn trong các trình duyệt khác nhau. Xenocode trình duyệt cho phép bạn chạy IE6, IE7, IE8, Firefox 2, Firefox 3, Google Chrome và Opera trực tiếp từ trang web. Chỉ có điểm yếu: Các dịch vụ không sẵn sàng cho Mac và GNU / Linux hỗ trợ máy tính cá nhân.
Visit Xenocode browsers

Test Everything


Các bạn có bao gời muốn kiểm tra thiết kế của bạn trong nhiều trình duyệt khác nhau, cũng như là kiểm tra pagerank thậm chí cả mã xác nhận tính hợp lệ của bạn tuân thủ tất cả các tiêu chuẩn ở một nơi?

Nếu có, Test Everything chắc chắn là một trang web mà bạn nên ghé thăm. Nó tổng hợp trên 100 công cụ khác nhau để kiểm tra gần như tất cả mọi thứ trên một trang web.
Visit Test Everything

Sprite Generator



CSS Sprites chắc chắn là 1 công nghệ tuyệt vời để sử dụng, cái chính của nó là giảm bớt số lượngyêu cầu HTTP. Nghỉ rằng, CSS sprites đòi hỏi thời gian và đặc biệt kiến thức, mà thực hiện những kỹ thuật kinda cứng để sử dụng, đặc biệt là đối với những người mới bắt đầu, công cụ kết xuất Sprite cho phép bạn gửi 1 zip file chứa hình ảnh của bạn, nó sẻ trả về cho bạn 1 tấm hình mà được kết hợp vào 1 sprite và thậm chí tốt hơn, các mã CSS mà bạn sẽ chỉ cần dán trong tập tin css chính của bạn.
Visit Sprite Generator

Buttonator



Chắc chắn rằng là 1 cái nút (button) đẹp là rất cần thiết cho 1 website hoặc 1 blog, nếu bạn chưa biết cách tạo hoặc không có thời gian thì hãy để cho Buttonatoror làm việc đó cho bạn, mà bạn có thể tự do sử dụng.
Visit Buttonator

Load Impact



Dịch vụ Load Impact miển phí cho phép bạn kiểm tra trang web của bạn xử lý lưu lượng như thế nào. Các kết quả với các trang web lưu trữ trên máy chủ tại WpWebHost là tuyệt vời.
Visit Load Impact

IconFinder


Một biểu tượng (icon) đẹp là phải có cho những web chuyên nghiệp, có rất nhiều icon trên web, nên "công chúng" trên IconFinder đả quyết định tập hợp các icon miển phí có thể dùng cho việc thiết kế của bạn, rất dể tìm kiếm trong vòng vài giây.
Visit IconFinder

TypeTester


Kiểm tra phông chữ như thế nào sẽ đưa vào thiết kế của bạn đôi khi là một khó hoạt động. rất vui thay, TypeTester cho phép bạn làm thế nào để kiểm tra phông chữ và các thuộc tính sẽ xem xét. Cuối cùng tiết kiệm được thời gian.
Visit TypeTester

CSS Tidy



Ngay cả các nhu cầu thường xuyên nâng cao phát triển của mình để tối ưu hóa mã CSS. CSS Tidy là miễn phí, ứng dụng trực tuyến mà sẽ sửa lỗi và tối ưu hóa mã CSS của bạn. Ví dụ, nó có thể tự động phát hiện các style dư thừa , một vấn đề rất phổ biến của các mã CSS.
Rất nhiều thiết lập có sẳn, để đảm bảo bạn sẽ được hài lòng với kết quả.
Visit CSS Tidy

Contact Forms Generators


Contact Forms Generators không yêu cầu kỹ năng lập trình, bạn sẽ tiết kiệm một thời gian quý báu của bạn bằng cách tạo ra các hình thức, bao gồm PHP, ASP hoặc thậm chí Perl mã cần thiết cho việc gửi email từ trang web của bạn vào hộp thư của bạn.
Visit Contact Form Generator

Source Translate and Edited by QuachNguyen

Tags: , ,


Categories:

Powered by BlogEngine.NET 1.6.0.0 - Eco Theme by n3o Web Designers