發表文章

目前顯示的是 8月, 2021的文章

[電繪]:Rattus rattus-黑鼠

圖片
  In some eras, rats represented the plague and were despised creatures, but in my eyes, humans and rats are no different. -- 在某些時代裡,老鼠代表著瘟疫,是人們唾棄的生物,然而在我眼裡,人與老鼠並無不同。

[Ajax]Return-Partial-View-as-JSON

圖片
 需求: 有時候使用Ajax有return PartialView的需求,但卻又只能傳送Json,不能return PartialView,這時候就只能把想回傳的view 轉成字串了。 實作: Index: 我們簡單寫一個頁面,裡面有一個button,並寫一個click事件,在按下之後會在TOP與BOTTOM div之前回傳我們所想加入的view。 <div>     <button onclick="TestBtn()">回傳patrialView</button> </div> <div>TOP</div> <div id="PartialDiv"></div> <div>BOTTOM</div> @Html.Hidden("TestViewUrl",Url.Action("TestViewToString", "Home")) @section scripts {     <script>         function TestBtn() {             $.ajax({                 url: $('#TestViewUrl').val(),                 type: "POST",                 success: function (e) {                     $('#PartialDiv').html(e.TestView);                 },                 error: function (e) {                     console.log(e);                     alert(e);                 }             })         }     </script> } partialView: partialView的部分我們簡單實作一個model是str

[MVC]在modal上層加blockUI

圖片
 需求: 有時候需要在modal顯示的時候,也想使用blockUI來鎖住畫面不讓使用者使用,但卻會發現雖然blockUI有成功顯示,但卻是顯示在modal的下層。 實作: (1)在modal上加上button來測試blockUI @*訊息Modal*@ <div id=" confirmModal " class="modal fade" tabindex="-1" role="dialog">     <div class="modal-dialog">         <div class="modal-content">             <div class="modal-header" id="confirmcontext">                 <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>                 <h4 id="confirmTitle" class="semi-bold">訊息</h4>             </div>             <div id="confirmBady" class="modal-body land-inline-striped"></div>             <div class="modal-footer text-left">                 <button type="button" id="confirmYes" class="btn btn-primary" onclic

[Enum] 取得列舉描述 GET Enum Description

圖片
 需求: 取得Enum Description(描素)的值。 實作: (1)建立EnumHelper:   /// <summary>         /// 取得列舉描述         /// </summary>         /// <param name="obj">列舉物件</param>         /// <returns></returns>         public static string GetDescription(this Enum obj)         {             var objName = obj.ToString();             var t = obj.GetType();             var fi = t.GetField(objName);             var arrayDescription = (DisplayAttribute[])fi.GetCustomAttributes(typeof(DisplayAttribute), false);             return arrayDescription == null ? string.Empty : arrayDescription[0].Description;         } (2)使用範例:  var enumDescription = LoginType.login.GetDescription();

[C#]String處理 回傳只有數字的字串

圖片
 需求: 傳入一個string,過濾掉不是數字的字元,回傳只有數字的字串。 實作: 方法一:用IsDigit()的方式過濾,回傳只有數字的字串          /// <summary>         /// Stripping out non-numeric characters in string         /// </summary>         /// <param name="str"></param>         /// <returns></returns>         public static string GetNumbers(string str)         {             return new string(str.Where(c => char.IsDigit (c)).ToArray());         } 方法二:用TryParse()的方式過濾,直接將字串轉為Int回傳           /// <summary>         /// string to int         /// </summary>         /// <param name="str"></param>         /// <returns></returns>         public static int? ToInt(this string str)         {             str = str.Trim();             if( int.TryParse (str,out var result))             {                 return result;             }             else             {                 return null;             }         }

[Mvc]簡單的確認訊息彈出視窗 confirmModal

圖片
 需求: 跳出可以自訂樣式的視窗,而不是用alert()的方式顯示訊息。 實作: view 在view加上自訂的訊息Modal,並寫一個button,新增click事件來測試是否有用。 <div>     <button onclick=" ShowMessage ('你想要傳的訊息');">         開啟確認訊息     </button> </div> @*訊息Modal*@ <div id="confirmModal" class="modal fade" tabindex="-1" role="dialog">     <div class="modal-dialog">         <div class="modal-content">             <div class="modal-header" id="confirmcontext">                 <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>                 <h4 id="confirmTitle" class="semi-bold">訊息</h4>             </div>             <div id="confirmBady" class="modal-body land-inline-striped"></div>             <div class="modal-footer text-left">        

[Question]“git push origin master” freezes

圖片
 問題: 在執行指令" git push origin master"推送出,出現錯誤訊息 “git push origin master” freezes。 解決方法: 這是安裝的問題,可能有最新版本的 Git。在我 重新安裝 git( 下載網址 )後,解決了這個問題。    參考: https://stackoverflow.com/questions/11128137/git-push-origin-master-freezes

[Question]this method is obsolete it has been replaced by system.configuration

圖片
問題: 警告訊息:[ this method is obsolete it has been replaced by system.configuration ] 解決方法: 依照警告訊息字面上的意思將原本的 ConfigurationSettings.AppSettings["String"]改為 ConfigurationManager .AppSettings["String"] 即可解決此警告。 參考: https://stackoverflow.com/questions/3959605/system-configuration-configurationsettings-appsettings-is-obsolete

[Aspose] 背景色設定 失效問題

圖片
問題: Aspose在設定style背景顏色的時候,一儲存格直無法成功顯示我們所設定的背景顏色。 原因: 會發生這個問題的原因,有可能是因為只設定了背景顏色,卻忘了設定背景類型所導致的,只要設定BackgroundType應就就可以解決此問題。 範例: //設定背景類型 titleStyle. Pattern = BackgroundType.Solid ; //加上這行應該就可以解決了 //設定儲存格背景顏色 titleStyle.ForegroundColor = System.Drawing.Color.LightGray;

文組畢業轉職軟體工程師

是什麼時候開始想要轉職的呢?我想是當看到104人力銀行我能找的工作起薪大概就兩萬六到兩萬八的時候開始的吧! 我是高第一,行銷與流通管理系畢業的,還在讀書的時候其實就覺得這個系好像沒什麼出路了(記得系主任之前也說過這個系不知道要大學部幹嘛,要有用至少也要讀到研究所),要怪可能就怪我自己一直以來沒什麼人生規劃吧,畢竟家裡有家族企業,想當然畢業後就會想坐在家裡領薪水,只是沒想到受到疫情的影響,原本人生耍廢計畫也就泡湯了... 這邊先來勸世一下,如果有想讀行銷與流通管理系大學部的學弟妹們,想知道未來有什麼出路的話,就我知道的,有很多都在保險業,房仲,百貨公司裡當櫃姐,當然也有到公司行銷部的啦!人生百百種,我只能說,這個系比起其他系來說,自己自由的時間很多,好好規劃的話,也是不錯的,只不過四年讀下來,我也說不出自己到底學了什麼專業具有獨特性就是了。 回歸正題,我為什麼會想轉職?說白了,其實主要還是起薪太低的問題...從小到大,我一直以為把書讀好,讀到還不錯的學校,薪水也不至於太差吧!不過到了開始找工作後,我才發現,這個想法太天真了,除了頂大以外的學校,管你讀哪間,其實沒什麼差,反而你讀什麼科系,學什麼專業,才是影響出社會第一份工作起薪的關鍵! 我在畢業後曾短暫的到超市業工作三個月,那時候薪水是談到兩萬八(含全勤),每個月會扣餐費,一餐算25元這樣( 超市面試經驗分享 , 離職與工作心得 )。這三個月我想很多,從工作第一天就開始在懷疑人生了,我真的願意做這份工作,做一輩子嗎?我不願意,所以我離開了。 轉職第一步 在超市離職前,我好好的思考了我到底喜歡什麼,願意做什麼?其實我小時候就對軟體工程師有一個嚮往,只是因為家裡是從商的,所以理所當然的,一路求學過程,都是朝商業類組發展,但人算不如天算,當我真的畢業了,家裡也沒了我發展的空間。事到如今,我打算好好的為自己規劃一次人生!記得大概是在2020年的6月份吧,我看到台中資策會,有課程說明會,在思索了一陣子之後,我決定報名參加,並且由於課程是全天候的,我在報名的隔天,心一狠,就跟店長提了辭呈!不過我還是有做到七月份啦,給店裡找人的時間。 這就是我為轉職踏出的第一步,至於為什麼選擇資策會呢?主要的原因還是因為錢,由於資策會有政府的補助,在資策會三個月的課程裡,我一毛錢都不用付,而且還可以取得許多教材資源!這對上課期間,無法工作賺錢的我來

[C#]過濾掉XML不允許的非法字符

圖片
 問題: 建立XML的屬性或是節點名稱時,若內涵XML不允許的非法字符會報錯,因此我想了一個方法,建立一個XMLHelper,將要建立的名稱字串先丟進去Helper裡,過濾掉非法字符,再回傳可被允許建立的字串來解決此問題。 範例: 我是用try,catch來過濾,若建立失敗即代表此字元是非法字符,程式碼如下。        /// <summary>           ///  把原本字串過濾掉控制字元           /// </summary>           /// <returns></returns>           public static string ConvertControlCharToEmpty( this string input )           {                 string output = "";               if( input ==null) return output;               for ( var i = 0; i < input.Length; i++ )               {                   try                   {                       var value = input.Substring( i, 1 );                       XmlDocument xmlDoc = new XmlDocument();                       XmlElement root = xmlDoc.CreateElement( value );                        output += value;                   }                   catch                   {                       continue;                   }               }               return output;             }  

[html] \N無效問題

圖片
問題:  有時候在<span>裡或某區塊的text裡使用\n,會現在顯示出來的字串"\n"的部分,變成了一個小空白,並沒有沒有換行的效果。 解決方法: 在標籤內 style新增這個屬性[ style=" white-space: pre-line " ],這樣可以 允許您直接在 HTML 中輸入文本,並帶有換行符 ,即可解決此問題。 範例: @{   var str = "你想顯示的字串 \n 你想顯示的下一行字串"; } <span style="white-space: pre-line" >@ str </span>   參考: Line break in HTML with '\n'

[Mvc]依環境不同自動切換webconfig的appSettings

圖片
一、 webconfig:在configSections裡建立sectionGroup與section,並依需要設定各環境所需的值    <sectionGroup name="MachineA">       <section name="appSettings" type="System.Configuration.NameValueSectionHandler" />     </sectionGroup>  <MachineA>     <appSettings>       <add key="TestStringA" value="MachineAStrA" />       <add key="TestStringB" value="MachineAStrB" />     </appSettings>   </MachineA> 二、建立ConfigManager類別庫 方便取值 (一)建立ConfigManager類別庫方便做取值使用 (二)建立Service資料夾,新增類別ConfigManagerService.cs  public class ConfigManagerService     {         /// <summary>         /// 取得 AppSettings 介面         /// </summary>         public static readonly NameValueCollection AppSettings = GetConfigurationUsingAppSettings();         private static NameValueCollection GetConfigurationUsingAppSettings()         {             var configName = GetMachineAppSettings();             var postSettin