星期三, 2月 25, 2009

動態控制usercontrol的cache

我們常常用cache來提昇網站的效率..不過也有時候需要用程式去控制cache..這裡來提供關於usercontrol的動態控制cache的作法..

作法一 : 控制權放在usercontrol裡..在usercontrol寫程式控制..

page.aspx

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<uc1:uc ID="uc1" runat="server" />
</div>
</form>
</body>
</html>

uc.cs

[PartialCaching(10)]
public partial class uc : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
Literal1.Text = DateTime.Now.ToString();

//這裡把Expires設成馬上過期..
BasePartialCachingControl pUc = Parent as BasePartialCachingControl;
if (pUc != null)
{
ControlCachePolicy ccp = pUc.CachePolicy;
ccp.SetExpires(DateTime.Now);
}
}
}

作法二 : 控制權放在page裡..動態load進usercontrol..

page.aspx


<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
</div>
</form>
</body>
</html>

page.cs

public partial class Default1 : System.Web.UI.Page
{
void Page_Init(object sender, EventArgs e)
{
//這裡把Expires設成馬上過期..
Control uc= this.LoadControl("~/uc.ascx");
PlaceHolder1.Controls.Add(uc);
PartialCachingControl pcc = uc as PartialCachingControl;
if (uc != null)
{
ControlCachePolicy ccp = pcc.CachePolicy;
ccp.SetExpires(DateTime.Now);
}
}
}

這兩種方法都可以做動態控制cache..有問題在互相討論ㄅ..Devil..

參考:

Hyperlink圖片超連結設定Alt屬性

最近做網站都流行要用SEO..啥是SEO..Wiki上是說..

搜尋引擎最佳化又稱搜尋引擎優化, 其英文叫 Search Engine Optimization,簡稱SEO

有興趣的去Wiki看就可以清清楚楚的知道SEO在幹麼..Open-mouthed..接下來進入主題..

我們都有在網頁上用圖片去超連結..通常我是用HyperLink Control然後設定ImageUrl跟NavigateUrl這兩個屬性後..就可以做出我想要的校果了..不過現在要來搞個SEO..所以我會去加個alt的屬性到HyperLink上..

<asp:HyperLink ID="HyperLink1" runat="server" ImageUrl="~/images/5212.png"
NavigateUrl="http://tw.yahoo.com" alt="testtest"></asp:HyperLink>

然後render出來我要的程式碼..不過看一下..疑..img這tag怎麼沒有alt..Wilted Rose..

<a id="HyperLink1" alt="testtest" href="http://tw.yahoo.com">
<img src="images/5212.png" style="border-width:0px;" /></a>

這樣一點都不SEO..查一下google..找到答案..只要設Text就有圖片的alt..Sick..啥鬼..這樣也行..按圖施工..

<asp:HyperLink ID="HyperLink1" runat="server" ImageUrl="~/images/5212.png"
NavigateUrl="http://tw.yahoo.com" alt="testtest" Text="testtest"></asp:HyperLink>

render出該有的alt..ok..收工..Kiss..

<a id="HyperLink1" alt="testtest" href="http://tw.yahoo.com">
<img src="images/5212.png" alt="testtest" style="border-width:0px;" /></a>

LiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiarLiar..

星期一, 2月 23, 2009

(轉)半途而廢

收eamil看到個一段話..覺得很不錯..轉貼到這給大家分享ㄅ..Angel..

------------------------------------------------轉貼email---------------------------------------------------------

半途而廢
事情不能按計劃順利進行的時候,
腦子太亂,什麼都做不下去的時候,
一切都亂七八糟的時候,
所有的人都不理解我的時候……
拿起一支鉛筆,畫一條線吧!
那就是起跑線!
這是上學的時候,一位老師對我說的話。
"有些人總是半途而廢,
但半途而廢並不一定是壞事。
如果做了三天半途而廢了,
第四天再繼續做就可以了 ……
這樣一直堅持下去,就能堅持十天,堅持一百天,
堅持一年。 "
老師說,半途而廢並不可怕,
可怕的是連開始都沒有 …

星期三, 2月 18, 2009

設定網頁元素的快速鍵

昨天被人問到一個問題..就是網頁元素可以設定快捷鍵ㄇ..我想了一下..應該有用js就可以做到了..晚上google一下w3c..其實更簡單的方法就是直接設定accesskey就行了..看codeㄅ..

<style type="text/css">
div
{
background-color: Silver;
width:300px;
height:100px;
text-align:center;
vertical-align:middle;
}
div a
{
text-decoration: none;
}
div a span
{
text-decoration: underline;
}
</style>
<div>
<a href="http://tw.yahoo.com" accesskey="y"><span>y</span>ahoo.com</a> |
<a href="http://google.com.tw" accesskey="g"><span>g</span>oogle.com</a> |
<a href="http://tw.msn.com" accesskey="m"><span>m</span>sn.com</a>
</div>

gvf

這樣在ie可以用Alt+accesskey..firefox則用Alt+Shift+accesskey..不錯ㄅ..如果要用js就看這篇文章裡面有教..Cool..

星期四, 2月 12, 2009

怎樣在div裡的img上下左右都置中

之前遇到一個問題..就是.."怎樣在div裡的img上下左右都置中"..之前遇到這問題時..我大部份都會用table去做掉..因為..div內的上下置中真的很XD..今天拜了一下大神..找到一篇文章..他可以做到上下置中..只是我覺得很麻煩..自己花個10分鐘試來試去..加上自己css的微薄觀念..試出一個好像可以解決問題的方法..看code吧..

<div style="width: 300px; height: 300px; border: solid 1px red;
text-align: center; display: table-cell; line-height: 300px;
vertical-align: middle;"
>
<img src="images/test.jpg" alt="" />
</div>

效果就是..

fsdf

這個範例結構很單純..我只有測試..ie7 跟 firefox 3.0.6..其他的browser留給大家去玩ㄅ..Tongue..最後..還是要說..如果真的搞不出來還是用table吧..能抓到老鼠的都是好貓..HypnotizedHypnotizedHypnotizedHypnotizedHypnotized..

星期六, 2月 07, 2009

Lingoes免費翻譯軟體

今天來介紹一個好的翻譯軟體..就是Lingoes..在使用Lingoes之前..我都是拿Dr.Eye當我的老師來翻譯..不過之前在firefox到3.0後..博士眼睛就壞掉了(也是有修的方法)..我不爽之下就砍了它..之後就只能用陽春到不行的yahoo的線上字典..昨天在網路上逛..忽來天外飛來一筆..看到了Lingoes這軟體..讚..雖然是大陸人做的..但是好用還是要推薦一下..這不是黑心貨啦..Devil..來看一下軟體翻譯的畫面..

vg2

不過今天不是要來貼安裝介紹頁面的..網路上有人幫我們做的很好了..直接參考就行了..我想推薦的是..這軟體是免錢的..但是該有的功能沒有比博士眼睛少..只是少了筆記簿而已..其他的..有過之而無不及..好處自己去使用就知道了..ClownClownClownClown..

星期三, 2月 04, 2009

第一張iCash..收到..

今天收到藍色小舖的iCash..Big GrinBig GrinBig Grin..貼一下圖炫耀一下..來臭屁一下努力一年的辛苦..Big Hug..

2

1

希望明年也可以收到小舖的禮物..哈..繼續努力去"打怪"..Silly..

星期二, 2月 03, 2009

輕量級物件struct

不知大家寫程式的時候..有沒有遇到..只想要一些小小的功能就必須要寫一個class的情況..例如:我想寫一個person的類別..裡面有姓名,身高,體重年齡而已..我們就需要這樣寫..

public class Person
{
public string Name { get; set; }
public int Height { get; set; }
public int Weight { get; set; }
public int Age { get; set; }
}

這樣感覺好浪費喔..一個簡單的東西就要一個class來處理..在這節能減炭的年代..真是浪費阿..survey一下msdn..找到了struct,裡面有提到struct是個輕量級的objects..所以有類似的需要..用一下struct也不錯..程式碼變成這樣..

public struct Person
{
public string Name { get; set; }
public int Height { get; set; }
public int Weight { get; set; }
public int Age { get; set; }
}

ps:不過輕量歸輕量..還是有一些限制..請看msdn

參考:
http://msdn.microsoft.com/zh-tw/library/ah19swz4(VS.80).aspx
http://msdn.microsoft.com/zh-tw/library/ah19swz4(en-us,VS.71).aspx