顯示具有 ASP 標籤的文章。 顯示所有文章
顯示具有 ASP 標籤的文章。 顯示所有文章

2018年5月11日 星期五

MVC Action上掛 Attribute 執行工作 (AOP)

    [AttributeUsage(AttributeTargets.Method)]
    public class AuthorizeAttribute : ActionFilterAttribute
    {
        /// <summary>
        /// 功能項目
        /// </summary>
        public FunctionEnum Function { get; set; }

public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
              將要做的事情寫在這邊

                base.OnActionExecuting(filterContext);
         }
     }


套用方式

MVC controller

        [FunctionAuthorize(Function = FunctionEnum.Bank)]
        public ActionResult Bank()
        {
            return this.View();
        }

attribute後面帶進去的就是 field

2016年9月1日 星期四

更改網頁TextBox內的值,但抓取物件時還是得到更改前的值

這個問題好像一不注意就會很常出現,所以只好來個記錄了(雖然是笨問題)

我的頁面有一個DataList,然後頁面會抓資料庫中的值來進行修改
接著我在按下存檔時,動作是進到DataList的ItemCommand事件
但是我抓到的textbox的文字值一直是存檔之前的值

後來上網找了一下,發現是個很笨的錯誤
原來按下按鈕之後,首先會進入的是pageload而不是直接進入ItemCommand
而我在pageload就是做從資料庫讀取的動作,所以再存檔時抓的值一直是錯誤的

解決方式很簡單,就是在pageload讀資料庫的時候,先判斷是不是postback就好

    protected void Page_Load(object sender, EventArgs e)
    {
        if(!IsPostBack)
        {
            GetQA();
        }        
    }

2016年7月25日 星期一

webservice 上傳檔案 找不到路徑 'D:\' 的一部分

在使用webservice上傳檔案時,有出現找不到路徑 'D:\' 的一部分的錯誤
原因可能如下:
1.資料夾權限未開啟
2.路徑錯誤

個人遇到時的錯誤是第二個,路徑在建立時須包含完整資料夾路徑加檔案名稱

FileStream fileStream = new FileStream(Server.MapPath(@".\test\" + this.Context.Request.Files[0].FileName), FileMode.Create);

如果只有前面資料夾部分就會錯誤上傳失敗

2016年6月28日 星期二

ASP.NET ListView Get Item

=================== .aspx ==========================================
<asp:ListView ID="lvEvent" runat="server" />
...
<asp:CheckBox ID="CheckBox1" runat="server" />

=================== .cs ==========================================
ListViewItem li = lvEvent.Items[index];
CheckBox cb = (CheckBox)li.FindControl("CheckBox1");
cb.Checked = true;