▼
2018年10月31日 星期三
Code Review 小重點
https://www.puritys.me/docs-blog/article-433-Code-Review-%E5%B0%8F%E9%87%8D%E9%BB%9E.html
插入與資料表資料行順序不同的資料
USE
[weberp]
GO
SET
IDENTITY_INSERT dbo.bas_unit
ON;
GO
INSERT
INTO dbo.bas_unit
(rowid
, mno
, mname)
VALUES (15 , 'H','時')
SET
IDENTITY_INSERT dbo.bas_unit
OFF;
GO
SELECT
* FROM dbo.bas_unit
SQL複製資料到新資料表
http://whitecat2.pixnet.net/blog/post/61624657-%5b%E7%A8%8B%E5%BC%8F%E7%AD%86%E8%A8%98%5dmssql---%E8%A4%87%E8%A3%BD%E8%B3%87%E6%96%99%E5%88%B0%E6%96%B0%E8%B3%87%E6%96%99%E8%A1%A8%282%E7%A8%AE%E5%B8%B8%E7%94%A8
sql語法取最後5筆並倒排序
select* from (SELECT top 5 [rowid]
,CONVERT(nvarchar(8), [mdate],114)as mtime
,[mno]
,[tno]
,[mdate]
,[sno]
,[uno]
,[lno]
FROM [webtest].[dbo].[temp_data] order by [mdate] desc) as t order by [mdate] asc
,CONVERT(nvarchar(8), [mdate],114)as mtime
,[mno]
,[tno]
,[mdate]
,[sno]
,[uno]
,[lno]
FROM [webtest].[dbo].[temp_data] order by [mdate] desc) as t order by [mdate] asc
2018年10月30日 星期二
2018年10月28日 星期日
數位簽章
https://ithelp.ithome.com.tw/articles/10188465
[C#.NET] 字串及檔案,利用 RSA 演算法加解密
https://dotblogs.com.tw/yc421206/archive/2012/06/25/73041.aspx
第七章 數位簽章與數位憑證
http://www.tsnien.idv.tw/Security_WebBook/%E7%AC%AC%E4%B8%83%E7%AB%A0%20%E6%95%B8%E4%BD%8D%E7%B0%BD%E7%AB%A0%E8%88%87%E6%95%B8%E4%BD%8D%E6%86%91%E8%AD%89.html
第七章 數位簽章與數位憑證
http://www.tsnien.idv.tw/Security_WebBook/%E7%AC%AC%E4%B8%83%E7%AB%A0%20%E6%95%B8%E4%BD%8D%E7%B0%BD%E7%AB%A0%E8%88%87%E6%95%B8%E4%BD%8D%E6%86%91%E8%AD%89.html
2018年10月25日 星期四
WebService服務的三種途徑Endpoint Disco WSDL 有什麼不同
WebService服務的三種途徑Endpoint Disco WSDL 有什麼不同
UDDI, DISCO, 以及WSDL 相應的都是什麼的?
下面這真是一圖道破天機
UDDI可以看做是世界上公開Web Service的黃頁,對各種各樣的Web Sercice進行分類和描述,使用disco文件可以去訪問一台服務器裡有哪些Web Service可用。
為什麼要使用UDDI 呢?在很久很久以前,在Google 都還沒有問世的時候,還記得是怎麼上網的嗎?那時, 新浪,搜狐是你上網必去的,為什麼?因為即便連上了網,都不知到該到哪裡去,而那個時候新浪和搜狐等門戶網站把站點做了分類和登記,以便於用戶找到需要的網站。老美那個時候同樣,使用的是雅虎。那個時候的雅虎就相當於現在的Google. 時過境遷,如今Google 成了最大的老大,成了全球的網站門戶,是Web 領域的UDDI.
在網絡上還有許許多多我們看不到的Web Services,比如天氣預報Service ,比如股票信息Service. 你在開發的時候當然知道你自己的Web Service. 可是當你發布了一個Web Service 並且想讓全世界的人都知道你有一個Web Service ,你該怎麼辦好?google 是不會收錄你的Web Service 的,這個時候你就需要去UDDI 註冊你的Web Service. 這樣別人訪問UDDI以及其下的分類的時候就有可能發現你的Web Service . 只是UDDI 仍舊有缺陷。
補充知識:
什麼是WebService?
Web Services是一種基於組件的軟件平台,是面向服務的Internet應用。Web Services是應用於Internet的,而不是限於局域網或試驗環境。這要求提出的Web Services框架必須適用於現有的Internet軟件和硬件環境,即服務的提供者所提供的服務必須具有跨平台、跨語言的特性。其次,Web Services所提供的服務不僅是向人,更需服務於其它應用系統。現有的Web網站也可以認為是面向服務的,但這種服務僅僅可以提供給人使用(只有人類才可以讀懂瀏覽器下載的頁面) 。而新一代的Web Services所提供的服務應能被機器所讀懂,例如其它應用程序及移動設備中的軟件系統。這樣,我們可以看出,Web Services的發展方向實際上是構造一個在現有Internet技術上的分佈計算系統。
Web Services框架的核心技術包括SOAP ,WSDL和UDDI ,它們都是以標準的XML文檔的形式表的。
什麼是SOAP?
SOAP是Web services的通信協議。SOAP是一種簡單的、輕量級的基於XML的機制,用於在網絡應用程序之間進行結構化數據交換。SOAP包括三部分:一個定義描述消息內容的框架的信封,一組表示應用程序定義的數據類型實例的編碼規則,以及表示遠程過程調用和響應的約定。
什麼是WSDL?
WSDL表示WEB服務說明語言。WSDL文件是一個XML文檔,用於說明一組SOAP消息以及如何交換這些消息。
什麼是UDDI?
UDDI(統一描述發現和集成)提供一種發布和查找服務描述的方法。UDDI數據實體提供對定義業務和服務信息的支持。WSDL中定義的服務描述信息是UDDI註冊中心信息的補充。
Endpoint: http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx
web服務的URI地址,你訪問之後,就會出現web服務的相關類描述、方法列表以及方法描述。
Disco: http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?disco
通過這個可以找到該web服務。即利用了web服務發現機制中的一種發現機制disco。
WSDL: http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl
該web服務的描述性語言。即Web Services Description Language。用來描述你的web服務定義的方法和屬性、binding協議部分、port端口以及服務URI。
IIS HTTP 強制轉 HTTPS 簡易做法
https://blog.darkthread.net/blog/http-to-https-with-iis/
透過 web.config 加入:
<system.webServer>
<httpErrors>
<error statusCode="403" subStatusCode="4" path="https://www.my-site.com.tw/" responseMode="Redirect" />
</httpErrors>
</system.webServer>
透過 web.config 加入:
<system.webServer>
<httpErrors>
<error statusCode="403" subStatusCode="4" path="https://www.my-site.com.tw/" responseMode="Redirect" />
</httpErrors>
</system.webServer>
2018年10月24日 星期三
UpdatePanel的重要屬性:Triggers
https://ithelp.ithome.com.tw/articles/10157125
介紹一下幾個UpdatePanel的重要屬性:
[*]Triggers:設定有哪些控制項(可以是Panel內部或外部)哪些事件會觸發UpdatePanel更新
[*]ChildrenAsTriggers: 用來設定在UpdatePanel的子控制項(就是被包在裡面的)被觸發時是否都會觸發Panel的更新
[*]UpdateMode: Always(預設)與 Conditional,Always是不管有沒有Tiggers都將更新Panel,Conditional則是要看Triggers與ChildrenAsTriggers的條件
[*]ChildrenAsTriggers: 用來設定在UpdatePanel的子控制項(就是被包在裡面的)被觸發時是否都會觸發Panel的更新
[*]UpdateMode: Always(預設)與 Conditional,Always是不管有沒有Tiggers都將更新Panel,Conditional則是要看Triggers與ChildrenAsTriggers的條件
2018年10月22日 星期一
elasticsearch+kinda demo網站
https://demo.elastic.co/app/kibana#/dashboard/ae0a73c0-ef67-11e7-9763-0fe78ad9c250?_g=(refreshInterval:(display:'1%20hour',pause:!t,section:3,value:3600000),time:(from:now-9y%2Fy,mode:relative,to:now-11s))&_a=(description:'Various%20Metrics%20from%20https:%2F%2Fdiscuss.elastic.co',filters:!(),fullScreenMode:!f,options:(darkTheme:!f,hidePanelTitles:!f,useMargins:!t),panels:!((gridData:(h:10,i:'1',w:8,x:12,y:0),id:'85679ec0-ef67-11e7-9763-0fe78ad9c250',panelIndex:'1',type:visualization,version:'6.3.1'),(gridData:(h:15,i:'2',w:24,x:0,y:25),id:'0b82b9d0-eba4-11e7-892e-05617465a089',panelIndex:'2',type:visualization,version:'6.3.1'),(gridData:(h:10,i:'3',w:28,x:20,y:0),id:cef126b0-ef67-11e7-9763-0fe78ad9c250,panelIndex:'3',type:visualization,version:'6.3.1'),(gridData:(h:10,i:'4',w:12,x:0,y:0),id:'40295fa0-ef68-11e7-9763-0fe78ad9c250',panelIndex:'4',type:visualization,version:'6.3.1'),(gridData:(h:15,i:'5',w:20,x:0,y:10),id:d7f53540-ef6b-11e7-9763-0fe78ad9c250,panelIndex:'5',type:visualization,version:'6.3.1'),(gridData:(h:15,i:'6',w:28,x:20,y:10),id:'00026380-ef78-11e7-9763-0fe78ad9c250',panelIndex:'6',type:visualization,version:'6.3.1'),(gridData:(h:15,i:'7',w:24,x:24,y:25),id:'05644310-ef92-11e7-9763-0fe78ad9c250',panelIndex:'7',type:visualization,version:'6.3.1')),query:(language:lucene,query:''),timeRestore:!t,title:'Discourse%20Metrics',viewMode:view)
2018年10月21日 星期日
[C#] 寫一個隱藏其它程序的小程式
https://notes.andywu.tw/2018/c-sharp-%E5%AF%AB%E4%B8%80%E5%80%8B%E9%9A%B1%E8%97%8F%E5%85%B6%E5%AE%83%E7%A8%8B%E5%BA%8F%E7%9A%84%E5%B0%8F%E7%A8%8B%E5%BC%8F/
2018年10月20日 星期六
2018年10月18日 星期四
[C#] Regular Expression 正則表達式
http://larry850806.github.io/2016/06/23/regex/
http://www.mydreamlib.com/user/dream/dyv/121/
https://zh-tw.coursera.org/lecture/sheng-c-biancheng/zheng-ze-biao-da-shi-m0unK
http://cs0.wikidot.com/regularexpression
https://dotblogs.com.tw/dragoncancer/2015/12/03/153024
http://www.mydreamlib.com/user/dream/dyv/121/
https://zh-tw.coursera.org/lecture/sheng-c-biancheng/zheng-ze-biao-da-shi-m0unK
http://cs0.wikidot.com/regularexpression
https://dotblogs.com.tw/dragoncancer/2015/12/03/153024
2018年10月15日 星期一
C#如何剖析JSON
[入門] JSON.NET 入門= jarray 很重要
https://dotblogs.com.tw/johnny/2014/05/04/intro-to-jsonnet
https://jsoneditoronline.org/
==========================================================
//JSON字串
string Json = textBox2.Text;
//轉成物件
ArrayList arrayList = new ArrayList();
arrayList = JsonConvert.DeserializeObject<ArrayList>(Json);
textBox3.Text = arrayList[0].ToString();
textBox4.Text = arrayList[1].GetType().Name;//型態為JArray
JArray output1 = (JArray)arrayList[1];
JArray output2 = (JArray)output1[0];
textBox5.Text = (string)output2[0];
JArray output3= (JArray)output2[1];
textBox6.Text = (string)output3[0];
============================================================
https://ithelp.ithome.com.tw/questions/10189022
https://dotblogs.com.tw/stanley14/2016/03/11/190123
https://jsoneditoronline.org/
https://dotblogs.com.tw/johnny/2014/05/04/intro-to-jsonnet
https://jsoneditoronline.org/
==========================================================
//JSON字串
string Json = textBox2.Text;
//轉成物件
ArrayList arrayList = new ArrayList();
arrayList = JsonConvert.DeserializeObject<ArrayList>(Json);
textBox3.Text = arrayList[0].ToString();
textBox4.Text = arrayList[1].GetType().Name;//型態為JArray
JArray output1 = (JArray)arrayList[1];
JArray output2 = (JArray)output1[0];
textBox5.Text = (string)output2[0];
JArray output3= (JArray)output2[1];
textBox6.Text = (string)output3[0];
============================================================
https://ithelp.ithome.com.tw/questions/10189022
https://dotblogs.com.tw/stanley14/2016/03/11/190123
https://jsoneditoronline.org/
2018年10月12日 星期五
ASP.NET中PostBack、及Get和Post的用法
[ASP.NET]上課第一天 -- PostBack的範例與入門解說
https://www.youtube.com/watch?v=xk-oGKl8aFE
ASP.NET WebForm - 頁面、容器、Request中尋找控制項
https://dotblogs.com.tw/kevin_date/2017/08/30/104641
ASP.NET中Get和Post的用法 Request、QueryString、Request.Form、Request.Params的区别
http://www.cnblogs.com/haichuan3000/articles/2329440.html
https://www.youtube.com/watch?v=xk-oGKl8aFE
ASP.NET WebForm - 頁面、容器、Request中尋找控制項
https://dotblogs.com.tw/kevin_date/2017/08/30/104641
ASP.NET中Get和Post的用法 Request、QueryString、Request.Form、Request.Params的区别
http://www.cnblogs.com/haichuan3000/articles/2329440.html
【ASP.NET】Form傳遞方式
https://dotblogs.com.tw/coca/2011/03/11/21793
ASP.NET 頁面之間傳值的幾種方式
https://hk.saowen.com/a/b5fa7d6b55bdf1e93aa05f787cdd27325ce4d353dc6fe4228f8e8a71d0821492C#實現的Windows剪貼板監視器功能實例
https://www.jb51.net/article/90881.htm
https://www.itread01.com/articles/1476429330.html
https://blog.csdn.net/MoreWindows/article/details/17655429
https://dotblogs.com.tw/abbee/2010/09/27/17922
https://www.itread01.com/articles/1476429330.html
https://blog.csdn.net/MoreWindows/article/details/17655429
https://dotblogs.com.tw/abbee/2010/09/27/17922
連結串列(Linked List)
http://emn178.pixnet.net/blog/post/93557502-%E9%80%A3%E7%B5%90%E4%B8%B2%E5%88%97%28linked-list%29
2018年10月11日 星期四
比較 keydown, keypress, keyup 的差異
https://medium.com/@yitailin/%E6%AF%94%E8%BC%83-keydown-keypress-keyup-%E7%9A%84%E5%B7%AE%E7%95%B0-4e873ba17e81
2018年10月8日 星期一
[C#] 更精簡的 string.Format 表示法:內插字串
https://dotblogs.com.tw/lazycodestyle/2016/06/24/005827
C# 6.0的新表示方法有幾點要注意的地方:
- 以「錢字號 ($)」開頭
- 將原先的號碼直接用變數取代
- 變數後方還是可以格式化呈現方式,如:小數點位數,時間格式化字串
2018年10月7日 星期日
2018年10月6日 星期六
TEXTBOX物件FOR迴圈運用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
List<TextBox> tb = new List<TextBox>();
TextBox tb0 = TextBox1;
TextBox tb1 = TextBox2;
TextBox tb2 = TextBox3;
TextBox tb3 = TextBox4;
tb.Add(tb0);
tb.Add(tb1);
tb.Add(tb2);
tb.Add(tb3);
for (int i = 0; i < 4; i++)
{
Literal1.Text += tb[i].Text+"<br />";
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
List<TextBox> tb = new List<TextBox>();
TextBox tb0 = TextBox1;
TextBox tb1 = TextBox2;
TextBox tb2 = TextBox3;
TextBox tb3 = TextBox4;
tb.Add(tb0);
tb.Add(tb1);
tb.Add(tb2);
tb.Add(tb3);
for (int i = 0; i < 4; i++)
{
Literal1.Text += tb[i].Text+"<br />";
}
}
}
2018年10月2日 星期二
在寫 ASP.NET 的時候要謹慎使用靜態(static)欄位
https://blog.miniasp.com/post/2008/07/29/Careful-using-static-field-in-ASPNET.aspx
https://www.bbsmax.com/A/lk5aBayod1/
因為靜態欄位,容易造成多執行緒死結
https://www.bbsmax.com/A/lk5aBayod1/
因為靜態欄位,容易造成多執行緒死結