2009年6月2日 星期二

Visual Studio Team System 網站測試

首先呢 一定要裝 VS2008 SP1
否則在"Web測試"時 一定會出現"無法在xx本機執行........." 一大串的錯誤訊息

之後要測試"負載測試"時 由於2008會將測試結果存在一個SQL資料庫中
所以必須先在"C:\Program Files\Microsoft Visual Studio 8\Common7\IDE"底下
自行新增一個名叫"LoadTestResultsRepository.Sql"的資料庫
不會建怎麼辦? 很簡單 隨便丟一個文字檔進去
把檔名及副檔名都改成LoadTestResultsRepository.Sql 就行啦~
接著在VS2008的"測試"->"管理Test Controller"中
點選"負載測試結果存放區"的按鈕

伺服器名稱: localhost\sqlexpress
使用Windows驗證
選取或輸入資料庫名稱: LoadTest

就可以開始執行負載測試囉

2009年4月10日 星期五

C槽與D槽對調 解決方法!!!

重灌NB時 有時候會發生nb的"還原槽"竟然寫著C: !!

無論怎麼重新切割 還原槽始終是C槽....

上網看了許多文章 原來這是硬碟的MBR出了問題

此時先切割一個D槽 安裝XP先

之後進入XP之後 請上網下載PTDD Partition Table Doctor 3.5

這是一個XP底下的應用程式 (其他很多方法必須使用到軟碟機 這年頭還有誰用軟碟呢...)

安裝好之後 打開應用程式 點選"fixboot" 接著點選"auto"自動修復

切記記得按save存檔 系統會要求你重開機

之後你就會發現本來裝在d槽的xp進不去了 真是可喜可賀~

接著放入xp光碟 進入安裝畫面 就會發現c槽在前面 還原槽變成d槽囉 耶^^Y

之後就可以放心的按下NB一鍵還原的按鈕開始還原囉^^

2009年4月9日 星期四

Javascript: 圖不存在時 已另一張圖取代之

這是一般網頁中插入圖片的語法: <img src="A.jpg" >

只要加入一個onerror函數 就可以自動在找不到A.jpg時 已預設的圖取代之:
<img src="A.jpg" onerror="this.src='A.gif'"
( 即A.jpg不存在時 以A.gif取代 )

---------使用函式的方法--------------
<img name="img1" src="A.jpg" onerror="javaScript:eImg()'"

function eImg()


{


 var Img = new Image()


 Img.src = document.img1.src;

 if(Img.fileSize=="-1")

 {

  document.img1.src = "A.gif";

 }

}


創造一個Image物件Img 讓Img讀取src路徑下的圖(A.jpg)
若A.jpg檔案大小為-1 則替換A.gif
可惜fileSize只能在IE下使用
在火狐底下可以用圖片寬度(width)或高度(height)作為圖片是否存在的依據

2009年3月29日 星期日

FancyUpload ASP.NET版

官方下載位置:http://digitarald.de/project/fancyupload/ 我是使用1.1版的

------準備檔案---------------------------------------
4個資料夾 「image」 「js」 「seiff」 「upload」
 「image」放3檔案: delete.png hoto_upload.png spinner.png
 「js」: FancyUpload.js FancyUpload_min.js
 「seiff」: Swiff.Base.js Swiff.Uploader.js Swiff.Uploader .swf
 「upload」上傳的圖片將置於此資料夾

另外準備兩個檔案 common.css mootools.js
------------------------------------------------------

------製作asp.net檔案-------------------------------
製作一個AspNet.aspx :
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AspNet.aspx.cs" Inherits="AspNet" %>

以及製作AspNet.aspx.cs:
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public partial class AspNet : System.Web.UI.Page
{
 protected void Page_Load(object sender, EventArgs e)
 {
  HttpPostedFile posttedFile = Request.Files["Filedata"];
  if (posttedFile != null){
   string name = posttedFile.FileName;
   posttedFile.SaveAs(Server.MapPath("~/upload/")+name);
  }
 }
}

其中
Server.MapPath("~/upload/")+name upload即上傳的資料夾 name為檔案名稱
---------------------------------------------------------

最後在官方修改官方範例JavaScript.htm
將原本<form action="upload.php" >改成<form action="AspNet.aspx" >

需注意的是JavaScript.htm中
<link rel="stylesheet" href="%3Cspan%20style="><link rel="stylesheet" href="common.css" type="text/css" media="screen" />
<script type="text/javascript" src="mootools.js"></script>
<script type="text/javascript" src="swiff/Swiff.Base.js"></script>
<script type="text/javascript" src="swiff/Swiff.Uploader.js"></script>
<script type="text/javascript" src="js/FancyUpload.js"></script>
上述檔案位置需正確

----------準備完成------------------------------------------
將所有檔案打包 傳送至支援asp.net的網頁空間中 開啟JavaScript.htm即可開始上傳檔案囉

Java Script語法

----------常用----------
alert("error"); 彈出警告視窗
confirm("OK?"); 確認視窗
document.write(); 輸出至html
typeof(); 變數型態 (undefined = 未定義)
windows.outerWidth; 目前瀏覽器顯示寬度
screen.width; 螢幕解析度寬度
scrollBy(x,y) 頁面捲軸捲動至x,y
document.body.style.overflow = "hidden"; 隱藏捲軸
document.MyForm.submit(); 表單MyForm送出
String.fromCharCode(event.keyCode); 將鍵盤值轉換成字元
document.Form1.myName.value; 表單Form1中 文字標籤myName 的值


----------其他----------
a = new Array(1,2,3); 矩陣
a陣列.concat(b陣列) 合併a b陣列
document.all["divId"].id 取得物件id
document.all["divId"].name 取得物件name
setTimeout(a(),1000) 每一秒執行一次a()
navigator.appName.toUpperCase(); 取得瀏覽器名稱
navigator.appVersion; 取得瀏覽器版本
navigator.userAgent.toUpperCase(); 取得有關使用者資訊 例如os


----------數值檢查篇----------
check = /.+@.+\..+/ /*email檢查*/
check = /[^0-9]/g /*數字檢查*/
check = /[^a-z|^A-Z]/g /*英文字檢查*/
check = /[^a-z]/gi /*英文字檢查2*/
check = /^\d{3}-\d{4}-\d{4}$|^d{10}$/ /*行動電話檢查 XXXX-XXX-XXX*/
物件.match( check );


----cookie篇---------
function saveDate() /*儲存cookie*/
{
theName = "Age"; /*儲存的變數*/
theValue = document.myFORM.age.valuel;
theDay = 7; /*保存七天*/
setDay = new Date(); /*目前時間*/
setDay.setTmee( setDay.getTime()+(theDay*1000*60*60*24)); /*+7天*/
expDay = setDay.toGMTString(); /*有效時間*/
document.cookie = theName + "=" + escape(theValue)+",expire=" + expDay;
}

function loadDate() /*讀取cookie*/
{
theDay= "";
theName = "Age=";
theCookie = document.cookie+";";
start = theCookie.indexof(theName);
if(start != -1)
{
end = theCookie.indexof(";",start);
theData = unescape(theCookie.suvstring(start+theName.length,end));
}
trture theData;
}


----變換連結圖片----
function swImg(img)
{
 if(document.image) { document.myIMG.src = img; }
}