2014年7月31日 星期四

[SQL] SQL 交集、聯集、差集

http://itgroup.blueshop.com.tw/gigi2001/chichi?n=convew&i=179461

交集INTERSECT:從兩個資料表取出同時存在的記錄。
聯集UNION:將兩個資料表的記錄都全部結合成在一起,如果有重複記錄,只顯示其中一筆。
差集EXCEPT:只取出A資料表中不包含與B資料表內相同的資料。

1SELECT column1, column2 FROM tableA 
2INTERSECT --or UNION or EXCEPT 
3SELECT column1, column2 FROM tableB

2014年7月27日 星期日

房價下跌4個條件 已經出現3個!

http://news.housefun.com.tw/tiffany/article/13036668370

文/林奇芬 
我在5月初寫過一篇文章,分析房價下跌要具備四大條件。最近遠雄合宜住宅行賄事件,讓房市雪上加霜,不僅建設類股股價下跌,看屋民眾也大幅減少。但是,真正影響房市的關鍵,還是回到基本面,今年四大條件逐漸成熟,房價下跌壓力越來愈大。

原文網址: 房價下跌4個條件 已經出現3個! | 好房News | 最在地化的房地產新聞 http://news.housefun.com.tw/tiffany/article/13036668370

一,房市成交量萎縮 最近公布5月份五大都市房屋移轉棟數,普遍都比4月上揚,許多人說,這表示房市交易轉趨熱絡。這種說法其實大有問題,因為,與4月份相比雖略有起色,但若仔細看5月份移轉棟數與去年同期比,則都出現2位數衰退。台北市下跌18.9%,新北市下跌22.8%,台中市下跌21.7%,台南市下跌17.4%,高雄市下跌36.5%。看到這些數字,就知道今年買氣與去年相比,差了多少。而且今年移轉棟數中,有一部分還來自於預售屋交屋,產生的所有權移轉。

 二,房屋供應量大增 今年是容積率獎勵最後一年,建商紛紛搶在今年申請建照,造成預售案大增。預估今年光5月份北台灣推案量就達650億元,6、7月可能還會再創高峰。由於年底有七合一選舉,建商除了搶建照,也希望能在選舉前趕快推案,免得碰上選舉的紛亂與選後的變數。 從2012年、2013年,年推案量超過9000億元,1兆元,再加上今年可能也有9000億元以上的水準,連續三年近3兆供給量,市場究竟需要多久才能消化完呢? 

三,房貸成數與利率 房貸成數越來越少,利率準備提高,這是目前民眾向金融機構貸款時,已經發生的現象。現階段先對特定區緊縮貸款成數,已直接對民眾購屋能力帶來衝擊。若明年開始有升息壓力,將更進一步抑制民眾購屋能力。 目前,唯一可以支撐房價的關鍵因素,就是台灣整體景氣還在上升階段。根據國發會公布的景氣燈號,至4月為止已經連續3個月出現綠燈,而近期上市櫃公司公布的營收、獲利與預估,顯示大部分企業業績可持續成長。隨著全球經濟穩步復甦,台灣經濟仍在持續上升,這對於房地產仍是正面支撐力量。 不過,我們說股價是領先指標,上市建材營造指數雖然在金融海嘯後有一波反彈,但目前則呈現相對疲弱走勢。雖然2012年1月至2013年7月有一波回升走勢,但過去一年許多產業隨著景氣回升,股價續創高點,但獲利良好的營建股股價卻相當疲弱,不僅跌破年線、2年線,近期更跌破5年線。此是否也透露營建業冷冬提早來臨了。而過去10年房價只漲不跌的神話,也到了面臨考驗的時刻了。

原文網址: 房價下跌4個條件 已經出現3個! | 好房News | 最在地化的房地產新聞 http://news.housefun.com.tw/tiffany/article/13036668370

為了住天龍國硬要買老公寓?這三種房千萬別買

資料來源
http://www.businessweekly.com.tw/KBlogArticle.aspx?ID=8641&pnumber=2

因此依照紅色子房的經驗,建議讀者們買房看房,碰到以下三種房屋建物都要特別注意:
一、垂老建物型:根據建築相關法規,加強磚造的老公寓建物參考耐用年限是35年,RC鋼筋混凝土造的建築物參考耐用年限是40年,SRC鋼骨鋼筋混凝土造建物耐用年限是50年。所以讀者看房時倘若遇到這些已經「屆齡退休」的老宅,建議想想自己打算要在這邊居住幾年,如果有都市更新機會,還可以試著等看看。如果沒有機會,就真的得好好考慮,就算未來房價增值,還得有命花才行。
二、裂縫滿佈型:由於每次地震來襲,震波其實像海浪一樣會對建築物「上沖下洗、左右拉扯」,所以建築結構對於上下起伏的壓力與左右擺動的側向力,都必須有辦法承受。如果讀者看到一棟建築物的外牆,充滿了水平、垂直、或交叉的裂縫,一來碰到強風豪雨,雨水會沿著這些裂縫滲入屋內,也容易有蟑螂蟲蟻滋生的困擾。二來這些裂縫已經降低了建築物對災害的承受力,住在這種房子實在不安心。
三、頭重腳輕型:在都會區有不少一樓規劃店面或商場,二樓以上是住家的公寓大樓類型。如果一樓騎樓空間相當寬敞,店面商場天花板高度較高,整棟建物柱子相對太細就會顯得頭重腳輕。加上都會區公寓大樓頂樓加蓋情形很常見,倘若沒有注意結構承重的限制,二樓以上的建築承重,常常超過原始設計結構負荷。萬一大地震來,就可能會發生「二樓壓一樓,一樓不見了」的慘事。所以,看到一樓是大面積商場、餐廳會館、停車場、集會空間的大樓,買房前要從側立面檢視,有沒有感覺建物頭重腳輕的情況。
生命永遠比資產價值重要。買房當下「居安思危」,是比「買了房價會不會漲」重要100倍的事。

2014年7月26日 星期六

擷取網頁上的股票

[ASP.NET][C#]使用HtmlAgilityPack(1) 擷取網頁上的股票

增加 四個參考元件 ,等等寫程式會用到
using System.IO;
using HtmlAgilityPack;
using System.Text;
using System.Net;

            //指定來源網頁
            WebClient url = new WebClient();
            //將網頁來源資料暫存到記憶體內
            MemoryStream ms = new MemoryStream(url.DownloadData("http://tw.stock.yahoo.com/q/q?s=1101"));
            //以奇摩股市為例http://tw.stock.yahoo.com
            //1101 表示為股票代碼

            // 使用預設編碼讀入 HTML 
            HtmlDocument doc = new HtmlDocument();
            doc.Load(ms, Encoding.Default);

            // 裝載第一層查詢結果 
            HtmlDocument hdc = new HtmlDocument();

            //XPath 來解讀它 /html[1]/body[1]/center[1]/table[2]/tr[1]/td[1]/table[1] 
            hdc.LoadHtml(doc.DocumentNode.SelectSingleNode("/html[1]/body[1]/center[1]/table[2]/tr[1]/td[1]/table[1]").InnerHtml);

            // 取得個股標頭 
            HtmlNodeCollection htnode = hdc.DocumentNode.SelectNodes("./tr[1]/th");
            // 取得個股數值 
            string[] txt = hdc.DocumentNode.SelectSingleNode("./tr[2]").InnerText.Trim().Split('\n');
            int i = 0;

            // 輸出資料 
            foreach (HtmlNode nodeHeader in htnode)
            {
                //將 "加到投資組合" 這個字串過濾掉
                Response.Write(nodeHeader.InnerText + ":" + txt[i].Trim().Replace("加到投資組合", "") + "
");
                i++;
            }

            //清除資料
            doc = null;
            hdc = null;
            url = null;
            ms.Close();

增加 四個參考元件 ,等等寫程式會用到
using System.IO;
using HtmlAgilityPack;
using System.Text;
using System.Net;


//指定來源網頁
WebClient url = new WebClient();
//將網頁來源資料暫存到記憶體內
MemoryStream ms = new MemoryStream(url.DownloadData("http://rate.bot.com.tw/Pages/Static/UIP003.zh-TW.htm"));
//以台灣銀行為範例

// 使用預設編碼讀入 HTML 
HtmlDocument doc = new HtmlDocument();
doc.Load(ms, Encoding.Default);

//取得現在的日期
Response.Write("現在時間:" + DateTime.Now + "
");
// 在Html內表示換行

// 取得匯率 
for(int x=3;x<=21;x++) 
{
    string txt1 = doc.DocumentNode.SelectSingleNode(@"/html[1]/body[1]/ul[1]/li[2]/center[1]/div[1]/div[2]/table[2]/tr[" + x + "]/td[1]").InnerText;
    string txt2 = doc.DocumentNode.SelectSingleNode(@"/html[1]/body[1]/ul[1]/li[2]/center[1]/div[1]/div[2]/table[2]/tr[" + x + "]/td[2]").InnerText;
    string txt3 = doc.DocumentNode.SelectSingleNode(@"/html[1]/body[1]/ul[1]/li[2]/center[1]/div[1]/div[2]/table[2]/tr[" + x + "]/td[3]").InnerText;
    string txt4 = doc.DocumentNode.SelectSingleNode(@"/html[1]/body[1]/ul[1]/li[2]/center[1]/div[1]/div[2]/table[2]/tr[" + x + "]/td[4]").InnerText;
    string txt5 = doc.DocumentNode.SelectSingleNode(@"/html[1]/body[1]/ul[1]/li[2]/center[1]/div[1]/div[2]/table[2]/tr[" + x + "]/td[5]").InnerText;
    string totle = string.Format("幣別:{0} ,買入現金匯率:{1} ,賣出即期匯率:{2} ,買入遠期匯率:{3} ,賣出歷史匯率:{4}", txt1, txt2, txt3, txt4, txt5);
    Response.Write(totle + "
");
}

//清除資料
doc = null;
url = null;
ms.Close();

HTML Agility Pack:簡單好用的快速 HTML Parser

http://htmlagilitypack.codeplex.com/ 
http://msdn.microsoft.com/zh-tw/evalcenter/ee787055.aspx


如何在ASP.NET中抓取來自於其他網站的資料 ?

http://enews.url.com.tw/enews/45768

類別功能
SocketWinsock 的基底類別, 可用來實作IPv4, IPv6的通訊協定。
TcpClient以 Winsock 實作的TCP用戶端。
UdpClient以 Winsock 實作的UDP用戶端。
TcpListener以 Winsock 實作的TCP伺服端。

抓取網頁下的所有的src


http://blog.xuite.net/yan.kee/CSharp/30330315-%E6%8A%93%E5%8F%96%E7%B6%B2%E9%A0%81%E4%B8%8B%E7%9A%84%E6%89%80%E6%9C%89%3Cimg%3E%E7%9A%84src

[Windows Phone/C#] C# 網頁擷取資料 解析網頁標籤(HTML Parser )API -HTML Agility Pack 以Windows Phone 8 為例

2014年7月25日 星期五

C# 寫入和更新資料庫

http://kaoway.pixnet.net/blog/post/21923087


寫入
SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=mydata;User Id=sa;Password=1234");
conn.Open();
try
{

SqlCommand cmd = new SqlCommand("Insert Into Member_Detail(Account_Name,Password,Name,NickName,Sex,Birthday,CellPhone,[E-mail]) values(@paramAc,@paramPa,@paramNA,@paramNick,@paramSex,@paramBd,@paramCP,@paramEm) ", conn);
cmd.Parameters.Add("@paramAc", SqlDbType.NVarChar).Value = TextBox2.Text;
cmd.Parameters.Add("@paramPa", SqlDbType.NVarChar).Value = TextBox3.Text;
cmd.Parameters.Add("@paramNA", SqlDbType.NVarChar).Value = TextBox5.Text;
cmd.Parameters.Add("@paramNick", SqlDbType.NVarChar).Value = TextBox6.Text;
cmd.Parameters.Add("@paramSex", SqlDbType.NVarChar).Value = DropDownList2.Text;
cmd.Parameters.Add("@paramBd", SqlDbType.NVarChar).Value = TextBox7.Text + TextBox8.Text + TextBox9.Text;
cmd.Parameters.Add("@paramCP", SqlDbType.NVarChar).Value = TextBox10.Text;
cmd.Parameters.Add("@paramEm", SqlDbType.NVarChar).Value = TextBox11.Text;
cmd.ExecuteNonQuery();
Server.Transfer("LogIn.aspx");
/* SqlCommand aa = new SqlCommand("Select * From Member_Detail", conn);
SqlDataReader dr = aa.ExecuteReader();
GridView1.DataSource = dr;
GridView1.DataBind();
cmd.Dispose();*/

}
catch
{
Label1.Text = "Error";
}
finally
{
conn.Close();
conn.Dispose();
}

更新
SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=mydata;User Id=sa;Password=1234");
conn.Open();
SqlCommand cmd = new SqlCommand("Update Member_Detail Set Name=@paramNa,NickName=@paramNick,Sex=@paramSex,Birthday=@paramBd where Account_Name='" + Session["Account_Name"] + "'", conn);
cmd.Parameters.Add("@paramNA", SqlDbType.NVarChar).Value = TextBox2.Text;
cmd.Parameters.Add("@paramNick", SqlDbType.NVarChar).Value = TextBox3.Text;
cmd.Parameters.Add("@paramSex", SqlDbType.NVarChar).Value = DropDownList2.Text;
cmd.Parameters.Add("@paramBd", SqlDbType.NVarChar).Value = TextBox7.Text + TextBox8.Text + TextBox9.Text;
cmd.ExecuteNonQuery();
conn.Close();
cmd.Dispose();
Server.Transfer("UpdateMDetail.aspx");



GridView 資料轉檔到 PDF - 使用 iTextSharp

ASP.NET 輕鬆轉 GridView 資料轉檔到 PDF - 使用 iTextSharp
http://www.dotblogs.com.tw/jerrymow/archive/2010/10/26/18580.aspx

http://www.cc.ntu.edu.tw/chinese/epaper/0015/20101220_1509.htm

iTextSharp PDF 中文效能
http://www.blueshop.com.tw/board/FUM20050124192253INM/BRD20131203155627NJ3.html

GridView透過iTextSharp輸出PDF中文問題
http://social.msdn.microsoft.com/Forums/zh-TW/eeb47fb7-f42e-48e8-a381-1e3917a3b289/gridviewitextsharppdf?forum=236

Itextsharp 產生PDF、套表
http://cc.web2.nhcue.edu.tw/files/16-1002-496.php

[ASP.net MVC] 將HTML轉成PDF檔案,使用iTextSharp套件的XMLWorkerHelper (附上解決顯示中文問題)
http://www.dotblogs.com.tw/shadow/archive/2014/02/09/143891.aspx

使用ASP .NET (C#) 產生PDF檔的好幫手—iTextSharp library (上) 
使用ASP .NET (C#) 產生PDF檔的好幫手—iTextSharp library (下) 
[ASP.net MVC] 在Web專案上使用Pechkin套件將網頁轉成PDF檔
使用iTextSharp 5將html檔轉成PDF檔 

TextSharp 中文字型解決方案
http://renjin.blogspot.tw/2009/01/using-chinese-fonts-in-itextsharp.html

http://itextpdf.com/

[ASP.NET]利用itextsharp將GridView匯出PDF檔

http://www.dotblogs.com.tw/puma/archive/2009/10/14/aspnet-gridview-pdf-itextsharp.aspx



抓取FormView裡的某個欄位填入預設值

http://vanessa0317.wordpress.com/2010/01/25/%E5%A6%82%E4%BD%95%E6%8A%93%E5%8F%96formview%E8%A3%A1%E7%9A%84%E6%9F%90%E5%80%8B%E6%AC%84%E4%BD%8D%E5%A1%AB%E5%85%A5%E9%A0%90%E8%A8%AD%E5%80%BC/


FormView裡,有些如留言者IP、或是留言時間,不需要自動填入,可以在FormView的DataBound事件中,利用FindControl的方式來取得。
例如:

Protect Sub FormView1_DataBound(ByVal sender as Object, ByVal e As system.EventArgs) Handles FormView1.DataBound
       CType(FormView1.FindControl(”時間欄位”),TextBox).Text=Now
       CType(FormView1.FindControl(”IP欄位”),TextBox).Text=Request.ServerVariables(”REMOTE_ADDR”)
End Sub
另外一種方式,是在Inserting時,再把值代入,這種方法,畫面中不需要用TextBox來顯示。
Protected Sub FormView1_ItemInserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.FormViewInsertEventArgs) Handles FormView1.ItemInserting
        e.Values.Item(”時間欄位”) = Now
        e.Values.Item(”IP欄位”) = Request.ServerVariables(”REMOTE_ADDR”)
    End Sub

取得電腦IP、主機名稱、電腦時間

http://king971119.blogspot.tw/2009/04/aspnet-c-ip.html

protected void Button1_Click(object sender, EventArgs e)
{
string log1 = HttpContext.Current.Request.UserHostAddress;//取得對方的IP Adress
Label1.Text = log1.ToString();
string log2 = System.Net.Dns.GetHostName();//取得對方的主機名稱
Label2.Text = log2.ToString();
string log3 = DateTime.Now.ToString();//取得電腦現在的時間
Label3.Text = log3.ToString();
}

如何將32位元的DLL安裝到64位元的Windows中 (WoW64)



http://blog.miniasp.com/post/2009/05/13/How-to-install-32-bit-DLL-into-Windows-64-bit-WOW64.aspx


2014年7月23日 星期三

PHP表格編輯-jeditable

可编辑的表格:jQuery+PHP实现实时编辑表格字段内容

http://www.helloweba.com/view-blog-74.html

上課範例
http://www.tad0616.net/modules/tad_book3/page.php?com_mode=nest&com_order=1&tbdsn=754

待研究...
https://code.google.com/p/cpassman/source/browse/trunk/1.02/groups.php?r=35

[jQuery] 用Jeditable快速更新MySQL資料

http://blog.yoren.info/2008/05/jquery-%E7%94%A8jeditable%E5%BF%AB%E9%80%9F%E6%9B%B4%E6%96%B0mysql%E8%B3%87%E6%96%99/


HTML標籤列表
http://web.thu.edu.tw/hzed/www/tag.htm

可編輯的表格:jQuery+PHP實現實時編輯表格字段內容

接入jquery ui的datepicker日歷插件
http://www.qihi.net/archives/25374

Jeditable,快速修改資料庫與表格的資料

http://blog.xuite.net/kb8.gyes/free/27183210-Jeditable%EF%BC%8C%E5%BF%AB%E9%80%9F%E4%BF%AE%E6%94%B9%E8%B3%87%E6%96%99%E5%BA%AB%E8%88%87%E8%A1%A8%E6%A0%BC%E7%9A%84%E8%B3%87%E6%96%99

[jQuery] 用Jeditable快速更新MySQL資料

http://blog.xuite.net/coke750101/networkprogramming/25625771


基于PHP+Jquery制作的可编辑的表格的代码 ***實作就可以***




-------------------------------------------------------

jEditable 使用技巧

先前曾在 網頁上的就地編輯 (Edit in place) 功能 中抱怨過這些 plugins 完全忽視 Server 資料更新失敗的可能性而不能還原成修改前的資料。
自己寫一個新的,單純使用 select 更動資料的 plugin 是一個方法,不過最後還是測出了當 Server 端資料更新失敗後如何還原原始資料的方法。
經由檢視 jEditable.js 內的源碼後得知 jEditable 將被編輯元素的原始內容保存在該元素的 revert 屬性中,配合 jEditable - In Place Editor Plugin for jQuery - Edit In Place 提到的 Submitting to function instead of URL 作法可以得知可指定一個函式處理 Server 端資料更新與狀態驗證:
  1. 將欲送往 Server 端之資訊以 JSON 格式加以封裝,封裝時必須額外封裝兩份資料:元素的原始內容 (revert) 及實際要傳回的內容 (rtnValue,預設值等於函式所接收到的 value 值)。
  2. 以 $.getJSON() 或其他 ajax 函式呼叫將欲更新的資料送往 Server 端並使用 callback function 處理 Server 端回覆的執行結果。此處的重點是先前封裝起來的 JSON 物件可以在 callback function 中使用,這表示可以將某些資訊傳入 callback function 中,也可以在 callback function 中設定回傳變數 (rtnValue) 的內容。
  3. 將最後欲顯示的資料內容傳回 jQuery 。
範例如下:
$(".editable").editable(
function(value, settings) {
var myParam = new Object(); // 要傳給 Server 用的欄位 myParam.key = this.id.replace( /key/i, "" ); myParam.param = value; // 回呼函式使用的欄位 myParam.revert = this.revert; // 元素原始內容 myParam.rtnValue = value; // 使用者修改過之內容 $.getJSON( "json/updateData", // Server 上更新資料之位址 myParam, // 傳入之參數 function( json ) { // 回呼函式/callback function if( !json.status ) { // 假如更新失敗就傳回原始內容 myParam.rtnValue = myParam.revert; } } ); return( myParam.rtnValue ); // 傳回動作結束後要顯示的內容 }, { loadurl : "json/loadPMData", type : "select",
indicator : "< img src='images/indicator.gif' >",
submit : "OK", tooltip: "滑鼠雙擊此欄位後即可編輯", event : "dblclick" } );

2014年7月15日 星期二

VB.NET:MSSQL資料庫連線

http://edcsofi.pixnet.net/blog/post/45574664-vb.net%3Amssql%E8%B3%87%E6%96%99%E5%BA%AB%E9%80%A3%E7%B7%9A

1.
Imports System.Data
Imports System.Data.SqlClient

2.
Dim conn = New SqlConnection '設"Conn"為新的SQL連線
conn.ConnectionString = "Data Source=伺服器名稱;Initial Catalog=資料庫;PersistSecurity Info=True;User ID=帳號;Password=密碼"   '指定SQL Server MDF檔來源
conn.Open() '開啟連線

Dim strinsert As String = "insert into account (account,password)"      '把SQL指令先轉成字串

strinsert &= "Values ('" & TextBox1.Text & "','" & TextBox2.Text & "')"
Dim cmnd As SqlCommand = New SqlCommand(strinsert, conn)   '定義cmnd為SqlCommand指令
cmnd.ExecuteNonQuery()  '呼叫Cmnd執行Sql指令
MessageBox.Show("Insert Complete")
conn.Close()  '結束連線

取得現在登入者的USERID,USERNAME,角色

http://social.msdn.microsoft.com/Forums/zh-TW/0d15269a-7e80-4038-b943-aa51f6714cb6/useridusername?forum=236

方法1:  session
程式碼區塊
login.aspx.cs
    protected void Login1_LoggedIn(object sender, EventArgs e)
    {
         Session["UserID"] = Login1.UserName;
    }



程式碼區塊
default.aspx.cs
    protected void Page_Load(object sender, EventArgs e)
    {
        if ((string)Session["UserID"] != null)
        {
            string LgnName = (string)Session["UserID"];
            if (Roles.IsUserInRole(LgnName, "Boss"))
                Literal1.Text = "hi,Boss";
            else if (Roles.IsUserInRole(LgnName, "Manager"))
                Literal1.Text = "hi,Manager";
            else Literal1.Text = "hi~";
        }

方法2:COOKIE
程式碼區塊
login.aspx.cs   
 protected void Login1_LoggedIn(object sender, EventArgs e)
    {
        //cookie
         DateTime now = DateTime.Now;
         HttpCookie MyCookie = new HttpCookie("UserName");
         MyCookie.Value = Login1.UserName;
         MyCookie.Expires = now.AddHours(1);//Cookie的到期
         Response.Cookies.Add(MyCookie);
    }
 程式碼區塊
default.aspx.cs   
protected void Page_Load(object sender, EventArgs e)
    {
        //cookie
        if (Request.Cookies.Get("UserID") != null)
        {
            HttpCookie MyCookie = Request.Cookies.Get("UserID");
            Literal1.Text = "MyCookie=" + MyCookie.Value;
        }
    }

2014年7月12日 星期六

蝴蝶效應、青蛙現象、鱷魚法則、鮎魚效應、羊群效應、刺猬法則、手錶定律、破窗理論、二八定律、木桶理論


1、蝴蝶效應:上個世紀70年代,美國一個名叫洛倫茲的氣象學家,在解釋空氣系統理論時說:
亞馬遜雨林一隻蝴蝶翅膀偶爾振動,也許兩週後就會引起美國得克薩斯州的一場龍捲風。  
蝴蝶效應是說,初始條件十分微小的變化,經過不斷放大,對其未來狀態會造成極其巨大的差別。
有些小事可以糊塗,有些小事如經系統放大,則對一個組織、一個國家來說是很重要的,就不能糊塗。

        
2、青蛙現象:把一隻青蛙直接放進熱水鍋裡,由於它對不良環境的反應十分敏感,就會迅速跳出鍋外。
如果把一個青蛙放進冷水鍋裡,慢慢地加溫,青蛙並不會立即跳出鍋外。
水溫逐漸提高的最終結局是青蛙被煮死了。
因為等水溫高到青蛙無法忍受時,它已經來不及,或者說是沒有能力跳出鍋外了。  
青蛙現象告訴我們,一些突變事件,往往容易引起人們的警覺。
而易致人於死地的,卻是在自我感覺良好的情況下,對實際情況的逐漸惡化,沒有清醒的察覺。


3、鱷魚法則:其原意是,假定一隻鱷魚咬住你的腳。
如果你用手去試圖掙脫你的腳,鱷魚便會同時咬住你的腳與手。
你愈掙扎,就被咬住得越多。所以,萬一鱷魚咬住你的腳,你唯一的辦法就是犧牲一隻腳。
譬如在股市中,鱷魚法則就是:當你發現自己的交易背離了市場的方向,必須立即止損。
不得有任何延誤,不得存有任何僥倖。

          
4、鮎魚效應:以前,沙丁魚在運輸過程中成活率很低。
後有人發現,若在沙丁魚中放一條鮎魚,情況卻有所改觀,成活率會大大提高。這是何故呢?
原來鮎魚在到了一個陌生的環境後,就會“性情急躁”,四處亂遊。
這對於大量好靜的沙丁魚來說,無疑起到了攪拌作用。
而沙丁魚發現多了這樣一個“異已分子” ,自然也很緊張,加速游動。
這樣沙丁魚缺氧的問題就迎刃而解了,沙丁魚也就不會死了。


5、羊群效應:頭羊往哪裡走,後面的羊就跟著往哪裡走。
羊群效應最早是股票投資中的一個術語。
主要是指投資者在交易過程中,存在學習與模仿現象。
“有樣學樣”,盲目效仿別人,從而導致他們在某段時期內買賣相同的股票。

        
6、刺猬法則:兩隻困倦的刺猬,由於寒冷而擁在一起。
可因為各自身上都長著刺,於是它們離開了一段距離,但又冷得受不了,於是湊到一起。
幾經折騰,兩隻刺猬終於找到一個合適的距離:既能互相獲得對方的溫暖,而又不至於被扎。 
刺猬法則,主要是指人際交往中的“心理距離效應”。


7、手錶定律:手錶定律是指一個人有一隻表時,可以知道現在是幾點鐘。
而當他同時擁有兩隻時,卻無法確定。
兩隻表並不能告訴更準確的時間,反而會失去對準確時間的信心。
手錶定律在企業管理方面,給我們一種非常直觀的啟發。
就是對同一個人或同一個組織,不能同時採用兩種不同的方法。
不能同時設置兩個不同的目標。
甚至每一個人不能由兩個人來同時指揮,否則將使這個企業或者個人無所適從。


        
8、破窗理論:一個房子如果窗戶破了,沒有人去修補,隔不久,其它的窗戶也會莫名其妙地被人打破。
一面牆,如果出現一些塗鴉沒有被清洗掉,很快的,牆上就佈滿了亂七八糟、不堪入目的東西。
一個很乾淨的地方,人們不好意思丟垃圾。但是一旦有垃圾出現之後,人就會毫不猶疑拋丟,絲毫不覺羞愧。

        
9、二八定律(巴萊多定律): 19世紀末20世紀初意大利的經濟學家巴萊多認為,
在任何一組東西中,最重要的只佔其中一小部分,約20%。其餘80 %儘管是多數,卻是次要的。
社會約80%的財富,集中在20%的人手裡。而80%的人,只擁有20%的社會財富。
這種統計的不平衡性,在社會、經濟及生活中無處不在。
二八法則告訴我們,不要平均地分析、處理和看待問題。企業經營和管理中,要抓住關鍵的少數。




10、木桶理論:木桶原理又稱短板理論
其核心內容為:一隻木桶盛水的多少,並不取決於桶壁上最高的那塊木塊,而取決於桶壁上最短的那塊。
根據這一內容,可以有兩個推論:其一,只有桶壁上的所有木板都足夠高,那木桶才能盛滿水。
其二,只要這個木桶里有一塊不夠高度,木桶里的水就不可能是滿的,水面是與最短的木板平齊的。
啟發我們思考許多問題,比如企業團隊精神建設的重要性。
在一個團隊里,決定這個團隊戰鬥力強弱的,不是那個能力最強、表現最好的人。
而恰恰是那個能力最弱、表現最差的落後者。
也就是說,要想方設法讓短板子,達到長板子的高度,才能完全發揮團隊作用。

2014年7月11日 星期五

session使用

session null 的判斷

http://www.blueshop.com.tw/board/FUM20041006161839LRJ/BRD20061106104428VWW.html


1if (Session["account"]==null)  
2
3     return
4}










[ASP.NET] 登出後,避免按上一頁,顯示Cache頁面




ASP.NET進階權限控管

http://www.dotblogs.com.tw/topcat/archive/2008/09/01/5265.aspx



本篇開始介紹如何將【畫面結構】設定與【角色/使用者】設定結合。用以設定【授權】
  1. 角色/使用者→畫面:角色/使用者擁有哪些畫面的權限
  2. 畫面→角色/使用者:一個畫面,對於眾多角色/使用者的權限設定
在開始講解本篇之前,如果看官您還沒有讀過以前的三個部分,建議您先看看以前的那三個Part,因為這樣比較能夠知道這篇在講些什麼
  1. ASP.NET進階權限控管-Part 1 願景:這包含了這篇會用到的一些設定的【規則】
  2. ASP.NET進階權限控管-Part 2 登入結合資料庫、樹狀結構維護:【畫面結構】的設定
  3. ASP.NET進階權限控管-Part 3 角色管理與角色使用者維護:【角色/使用者】的設定