Skip to main content

Posts

Showing posts from 2018

Disable html5 mode in angular for individual link

In Angular, if we enable the html5 mode,    all href's on the page w ill try to use the html5mode and use the route provider to determine which view should be loaded. In reality, we may need to enable html5 mode on the page but for certain links we want the browser to navigate to the link directly. In HTML5 mode, there are three situations in which the A tag is not rewritten: from the  angular docs Links that contain a  target  attribute. Example:  <a href="/ext/link?a=b" target="_self">link</a> Absolute links that point to a different domain  Example: <a href="http://angularjs.org/">link</a> Links starting with '/' that lead to a different base path when  base  is defined  Example: <a href="/not-my-base/link">link</a>

nlog in netcore does not output Trace, Debug and Information log

When using nlog in .netcore application, I found out a very strange thing: When using VisualStudio to debug the application, the nlog works perfect. I set the minloglevel in nlog.config to Debug: <rules> <!--Skip Microsoft logs and so log only own logs--> <logger name="Microsoft.*" minlevel="Trace" writeTo="blackhole" final="true" /> <!--All logs, including from Microsoft--> <!--<logger name="*" minlevel="Warn" writeTo="console" /> --> <logger name="*" minlevel="Debug" writeTo="applog" /> </rules> However, when deployed to server, the log only shows level equals or greater than Warning. I have also set the minlevel in program.cs file and it is still output Trace, Debug and Information log: .ConfigureLogging((host, builder) => { host.HostingEnvironment.ConfigureNLog("nlog.config"); builder.Set

HttpClient BaseAddress

When using HttpClient class in .NET, I found out when assigning the BaseAddress to HttpClient, the BaseAddress must end with "/". Otherwise it would get 404 error when calling the get or post method. using (var client = new HttpClient()) { client.BaseAddress = new Uri("http://localhost/"); client.DefaultRequestHeaders.Accept.Clear(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); HttpResponseMessage response = await client.GetAsync("Setting"); if (response.IsSuccessStatusCode) { return await response.Content.ReadAsStringAsync(); } else { ilog.Error(string.Format("GetGlobalSetting error - StatusCode: {0}; ReasonPhrase: {1} ", response.StatusCode.ToString(), response.ReasonPhrase??"")); throw new Exception(string.Format("Error getting Global settings - StatusCode: {0}; ReasonPhrase: {1}", response.StatusCode.ToString(), response.ReasonPhrase ?? &qu