1. 程式要呼叫 「log4net.Config.BasicConfigurator.Configure();」
如下:
static class Program
{
private static readonly log4net.ILog log =
LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
/// <summary>
/// 應用程式的主要進入點。
/// </summary>
[STAThread]
static void Main()
{
//初始化log4net
log4net.Config.BasicConfigurator.Configure();
//
log.Debug("Test");
}
}
2. AssemblyInfo要加[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
如下:
// Log4Net Configuration.
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
3.確認 log4net.config內容及檔案存。
資訊雜貨店
2013年6月18日 星期二
2013年5月20日 星期一
網頁定時(排程)寄出郵件
面對某些需求,會需要寫出能「定時寄出信件」的功能,或定時作什麼。
網路上找到可行的作法,但嚴謹度可能不足,以下整理:
作法: 將功能寫於某頁面之下,再設定windows排程,定時執行指定之bat,bat檔中寫好開啟該網頁之指令。
重點:
1.為避免被任意執行,可以自訂密碼,透過網頁參數傳遞。如:SendMail.aspx?pwd=test123
2.bat檔內容如下:
cd C:\Program Files\Internet Explorer\
iexplore "http://www.google.com.tw/"
3.頁面需加上javascrip,執行完畢後自動關閉,否則頁面會一直一直開啟。
參考網站:http://bloginsect.blogspot.tw/2009/06/windows.html
網路上找到可行的作法,但嚴謹度可能不足,以下整理:
作法: 將功能寫於某頁面之下,再設定windows排程,定時執行指定之bat,bat檔中寫好開啟該網頁之指令。
重點:
1.為避免被任意執行,可以自訂密碼,透過網頁參數傳遞。如:SendMail.aspx?pwd=test123
2.bat檔內容如下:
cd C:\Program Files\Internet Explorer\
iexplore "http://www.google.com.tw/"
3.頁面需加上javascrip,執行完畢後自動關閉,否則頁面會一直一直開啟。
參考網站:http://bloginsect.blogspot.tw/2009/06/windows.html
2012年8月8日 星期三
LINQ 動態組條件式
範例:如果a為0,就不要作條件式sch.filed1
== b。
var systemA = from sch in db.dbname
let
isAppendWhere = (a == "0")
where sch.sys_lockmark.ToString().Trim() == "00"
&&
(isAppendWhere? true : sch.filed1 == b)
select sch;
l
let isAppendWhere= (a == "0")
說明:要給isSearchAll一個布林值
l
(isAppendWhere? true : sch.filed1 == b)
這是if的簡短式,(條件? “true作的事” : ”false作的事”)
所以如果isAppendWhere為true,就作true(等於沒條件)
反之若如果isAppendWhere為false,就作sch.filed1 == b 條件式
2012年6月10日 星期日
WPF 設定Install project 的部屬專案屬性
WPF 設定Install project 的部屬專案屬性,指定專案的製造商名稱(Manufacturer Name)
小妹我實在找了很久,終於發現必須在方案總管的頁籤中點選install project
,再直接切換到屬性頁籤,就可以看到設定Manufacturer Name的地方囉!
2012年1月29日 星期日
透過程式動態產生WebUserControl物件
- 先建立自訂的WebUserControl -- SingleQues.ascx
- 建立:
ASP.singleques sq = ( ASP.singleques )LoadControl("~/Controls/SingleQues.ascx");
需注意,SingleQues.ascx要先編譯成功無語法錯誤後,在要動態產生WebUserControl的aspx頁面中,需在前面加上<%@ Register TagName="
SingleQues " TagPrefix="MyWUC" Src="~/Controls/
SingleQues.ascx " %>。
2011年10月6日 星期四
WPF 設定應用程式icon
視窗的圖示:
<Window Icon="/PostManager;component/images/barcode.ico" />
安裝後,程式集上面的圖示:
至專案「properties」中,應用程式分頁中「資源」作設定。
<Window Icon="/PostManager;component/images/barcode.ico" />
安裝後,程式集上面的圖示:
至專案「properties」中,應用程式分頁中「資源」作設定。
2011年9月22日 星期四
如何讓expander展開後,Focus子項目
如何讓expander展開後,就Focus在子項目
說明:若將textbox1.Focus()直接寫在expander的expanded裡會回傳false,因為在展開時,該textbox1並未看的見,故無法focus();
作法:
1.建立一個boolean值,控制是否要focus。如beFocus = false;
2.於expander的Expanded事件中,將beFocus設為true;
3.於要被Focus的子項目之IsVisibleChanged事件中,撰寫若visible = true 則focus 自己,並將beFocus改回false。
Example
private bool beFocus = false;
private void expander1_Expanded(object sender, RoutedEventArgs e)
{
beFocus = true;
}
private void textbox1_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
{
if (((bool)e.NewValue == true) && beFocus) {
textbox1_.Focus();
beFocus = false;
}
}
說明:若將textbox1.Focus()直接寫在expander的expanded裡會回傳false,因為在展開時,該textbox1並未看的見,故無法focus();
作法:
1.建立一個boolean值,控制是否要focus。如beFocus = false;
2.於expander的Expanded事件中,將beFocus設為true;
3.於要被Focus的子項目之IsVisibleChanged事件中,撰寫若visible = true 則focus 自己,並將beFocus改回false。
Example
private bool beFocus = false;
private void expander1_Expanded(object sender, RoutedEventArgs e)
{
beFocus = true;
}
private void textbox1_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
{
if (((bool)e.NewValue == true) && beFocus) {
textbox1_.Focus();
beFocus = false;
}
}
訂閱:
文章 (Atom)