Convert .NET phát triển một công cụ tích hợp, mạnh mẽ, đa mục đích chuyển đổi. Các tính năng: C # sang VB và ngược lại, LINQ tester, mã hóa / giải mã, Regular Expression tester, Base64 Encoding / Decoding và dịch văn bản đầy đủ.
Tuesday, December 8, 2015
Công cụ chuyển ngôn ngữ miễn phí
Convert .NET phát triển một công cụ tích hợp, mạnh mẽ, đa mục đích chuyển đổi. Các tính năng: C # sang VB và ngược lại, LINQ tester, mã hóa / giải mã, Regular Expression tester, Base64 Encoding / Decoding và dịch văn bản đầy đủ.
Thursday, November 26, 2015
Saturday, October 31, 2015
Wednesday, September 9, 2015
kiểm tra tính tương thích của ứng Android trên các thiết bị chạy chip intel
một bài hướng dẫn kiểm tra tương thích rất chi tiết
Wednesday, August 26, 2015
Thursday, August 20, 2015
Thursday, April 9, 2015
Sunday, March 15, 2015
Tài nguyên miễn phí làm game
một kho tài nguyên miễn phí cho các bạn học làm game
Friday, March 13, 2015
Cấu hình gmail và sử dụng c# để gửi thư trong asp.net
Trong hướng dẫn này chúng ta cùng cấu hình mail server (sử dụng mail miễn phí Gmail) trên website asp.net.
Bước 1: Cấu hình mail server qua web.config. Bổ sung mã nguồn sau và giữa thẻ configuration
[sourcecode language="xml"]
<system.net>
<mailSettings>
<smtp from="ngotuongdan@gmail.com">
<network host="smtp.gmail.com" password="mật khẩu" port="587"
userName="tài khoản" />
</smtp>
</mailSettings>
</system.net>
[/sourcecode]
Bước 2: Sử dụng thư viện smtp để gởi thư
[sourcecode language="csharp"]
public Mailer(string Email, string MatKhau, string TaiKhoan)
{
try
{
var smtpSection = (SmtpSection)ConfigurationManager.GetSection("system.net/mailSettings/smtp");
string strHost = smtpSection.Network.Host;
int port = smtpSection.Network.Port;
string strUserName = smtpSection.Network.UserName;
string strFromPass = smtpSection.Network.Password;
SmtpClient smtp = new SmtpClient(strHost, port);
NetworkCredential cert = new NetworkCredential(strUserName, strFromPass);
smtp.Credentials = cert;
smtp.EnableSsl = true;
MailMessage msg = new MailMessage(smtpSection.From, Email);
msg.Subject = "Thông tin đăng ký !";
msg.IsBodyHtml = true;
msg.Body += "<h1>Trung tâm quản lý người dùng.</h1>";
msg.Body += "<h3> http://" + WebConfigurationManager.AppSettings["domain"].ToString() + "</h3>";
msg.Body += "Bạn vừa đăng ký sử dụng hệ thống web GIS.<br/>";
msg.Body += "<br/>Tên đăng nhập của bạn là: <b>" + TaiKhoan + "</b>";
msg.Body += "<br/><br/>Mật khẩu của bạn là: <b>" + MatKhau + "</b><br/>";
msg.Body += "<hr/>Bạn nên đổi mật khẩu.";
smtp.Send(msg);
HttpContext.Current.Response.Write("<script>alert('Gởi thư thành công.');</script>");
}catch(Exception ex)
{
HttpContext.Current.Response.Write("<script>alert('Không gởi mail được');</script>");
}
}
[/sourcecode]
Như vậy là chúng ta có thể gởi được một email tới địa chỉ của người nhận.
Google code đóng cửa
Họ cũng cung cấp công cụ để chúng ta export sang các hệ thông khác
https://code.google.com/export-to-github/
Thật tiếc cho một dịch vụ mang tính cộng đồng.
Wednesday, February 18, 2015
Chuyển dữ liệu từ SQL server 2008 về 2005
Thông thường chúng ta hay upgrade database sql server từ thấp lên phiên bản cao hơn (2005 lên 2008) nhưng một số tình huống chúng ta phải làm ngược lại downgrade từ 2008 về 2005 (không thể backup 2008 và restored lại vào 2005 được). Có một số giải pháp cho vấn đề này.
1. Export dữ liệu trực tiếp từ 2008 về 2005 thông qua công cụ import/export của sqlserver managemnet studio.
2. Generate Script của sqlserver managemnet studio cách này đơn giản và hiệu quả
Trong bài này chúng ta cùng tìm hiểu cách tạo script để chuyển dữ liệu từ 2008 về 2005.
- Nhấn chuột phải lên dữ liệu cần chuyển và chọn như hình
- Chọn các tùy chon như hình sau
- Chọn tất cả hoặc chọn các đối tượng muốn tại script, Nhấn Next để tiếp tục
- Chọn nút Advanced để chỉ định phiên bản sql và dữ liệu sẽ mang theo
- Script for Server Version
- Types of data to script
Nhấn OK để xác nhận tùy chọn
- Nhấn 03 lần Next để phát sinh Script
- Nhấn Finish để hoàn thành.
Vậy là xong rồi.
Tuesday, December 16, 2014
Sử dụng css đinh dạng trang in + php tạo nội dung (in hóa đơn)
[caption id="attachment_1533" align="aligncenter" width="596"]
Giỏ hàng[/caption]Khi nhấn vào IN HÓA ĐƠN sẽ cho phép in với mẫu như sau
[caption id="attachment_1534" align="aligncenter" width="660"]
Biên lai thanh toán[/caption]Với mẫu code CSS sau sẽ giúp chúng ta định dạng mẫu giấy in theo mẫu A4.
[sourcecode language="css"]
body {
margin: 0;
padding: 0;
background-color: #FAFAFA;
font: 12pt "Tohoma";
}
* {
box-sizing: border-box;
-moz-box-sizing: border-box;
}
.page {
width: 21cm;
overflow:hidden;
min-height:297mm;
padding: 2.5cm;
margin-left:auto;
margin-right:auto;
background: white;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.subpage {
padding: 1cm;
border: 5px red solid;
height: 237mm;
outline: 2cm #FFEAEA solid;
}
@page {
size: A4;
margin: 0;
}
button {
width:100px;
height: 24px;
}
.header {
overflow:hidden;
}
.logo {
background-color:#FFFFFF;
text-align:left;
float:left;
}
.company {
padding-top:24px;
text-transform:uppercase;
background-color:#FFFFFF;
text-align:right;
float:right;
font-size:16px;
}
.title {
text-align:center;
position:relative;
color:#0000FF;
font-size: 24px;
top:1px;
}
.footer-left {
text-align:center;
text-transform:uppercase;
padding-top:24px;
position:relative;
height: 150px;
width:50%;
color:#000;
float:left;
font-size: 12px;
bottom:1px;
}
.footer-right {
text-align:center;
text-transform:uppercase;
padding-top:24px;
position:relative;
height: 150px;
width:50%;
color:#000;
font-size: 12px;
float:right;
bottom:1px;
}
.TableData {
background:#ffffff;
font: 11px;
width:100%;
border-collapse:collapse;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:12px;
border:thin solid #d3d3d3;
}
.TableData TH {
background: rgba(0,0,255,0.1);
text-align: center;
font-weight: bold;
color: #000;
border: solid 1px #ccc;
height: 24px;
}
.TableData TR {
height: 24px;
border:thin solid #d3d3d3;
}
.TableData TR TD {
padding-right: 2px;
padding-left: 2px;
border:thin solid #d3d3d3;
}
.TableData TR:hover {
background: rgba(0,0,0,0.05);
}
.TableData .cotSTT {
text-align:center;
width: 10%;
}
.TableData .cotTenSanPham {
text-align:left;
width: 40%;
}
.TableData .cotHangSanXuat {
text-align:left;
width: 20%;
}
.TableData .cotGia {
text-align:right;
width: 120px;
}
.TableData .cotSoLuong {
text-align: center;
width: 50px;
}
.TableData .cotSo {
text-align: right;
width: 120px;
}
.TableData .tong {
text-align: right;
font-weight:bold;
text-transform:uppercase;
padding-right: 4px;
}
.TableData .cotSoLuong input {
text-align: center;
}
@media print {
@page {
margin: 0;
border: initial;
border-radius: initial;
width: initial;
min-height: initial;
box-shadow: initial;
background: initial;
page-break-after: always;
}
}
[/sourcecode]
Và để có thể có được nội dung in chúng ta sẽ sử dụng PHP để phát sinh nội dung như sau:
[sourcecode language="php"]
<body onload="window.print();">
<div id="page" class="page">
<div class="header">
<div class="logo"><img src="../images/logo.jpg"/></div>
<div class="company">C.Ty TNHH Salomon</div>
</div>
<br/>
<div class="title">
HÓA ĐƠN THANH TOÁN
<br/>
-------oOo-------
</div>
<br/>
<br/>
<table class="TableData">
<tr>
<th>STT</th>
<th>Tên</th>
<th>Đơn giá</th>
<th>Số</th>
<th>Thành tiền</th>
</tr>
<?php
session_start();
$tongsotien = 0;
if(isset($_SESSION['giohang'])){
$pos = 1;
$tongsotien = 0;
foreach($_SESSION['giohang'] as $i => $row)
{
$tongsotien += $row['sp_soluong']*$row['sp_dongia'];
echo "<tr>";
echo "<td class=\"cotSTT\">".$pos++."</td>";
echo "<td class=\"cotTenSanPham\">".$row['sp_ten']."</td>";
echo "<td class=\"cotGia\"><div id='giasp".$row['sp_id']."' name='giasp".$row['sp_id']."' value='".$row['sp_dongia']."'>".number_format($row['sp_dongia'],0,",",".")."</div></td>";
echo "<td class=\"cotSoLuong\" align='center'>".$row['sp_soluong']."</td>";
echo "<td class=\"cotSo\">".number_format(($row['sp_soluong']*$row['sp_dongia']),0,",",".")."</td>";
echo "</tr>";
}
}
?>
<tr>
<td colspan="4" class="tong">Tổng cộng</td>
<td class="cotSo"><?php echo number_format(($tongsotien),0,",",".")?></td>
</tr>
</table>
<div class="footer-left"> Cần thơ, ngày 16 tháng 12 năm 2014<br/>
Khách hàng </div>
<div class="footer-right"> Cần thơ, ngày 16 tháng 12 năm 2014<br/>
Nhân viên </div>
</div>
</body>
[/sourcecode]
Chạy thử trang web chúng ta sẽ có hình như bên trên.
Friday, November 14, 2014
Thursday, September 18, 2014
Friday, September 5, 2014
Bài thực hành strut 1x
Strut2 --> tổng quan
LAB 02 Strut - Dynamic Form Internationalization --> lab
LAB 02 Strut --> lab
lab02_List_add --> lab
Strut_Client_Side_validation --> lab
Mã nguồn ===> ở đây
Video hướng dẫn ===> ở đây
Hướng dẫn sử dụng SVN + netbean quản lý mã nguồn chung
[youtube=http://youtu.be/O4Ct7NAi-q0]



