Skip to content

Instantly share code, notes, and snippets.

View MahdiKarimipour's full-sized avatar
🎯
Focusing

MK MahdiKarimipour

🎯
Focusing
  • TechnologyLeads
  • Sydney, Australia
View GitHub Profile
@MahdiKarimipour
MahdiKarimipour / api-versioning-configure-versioning-method.cs
Created June 24, 2021 22:28
Configures Route Versioning for Asp.NET Web APIs
private void ConfigureVersioning(IServiceCollection services)
{
services.AddControllersWithViews(o =>
{
o.UseGeneralRoutePrefix("/v{version:apiVersion}");
}).AddNewtonsoftJson(options =>
{
options.SerializerSettings.MaxDepth = 1;
options.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore;
options.SerializerSettings.DefaultValueHandling = Newtonsoft.Json.DefaultValueHandling.Ignore;
@MahdiKarimipour
MahdiKarimipour / url-rewrite-basic-example.cs
Created June 24, 2021 23:15
Basic Example in Url Rewrite
app.Use(async (context,next) =>
{
var url = context.Request.Path.Value;
if (url.Contains("/home/old-url")) {
context.Request.Path = "/home/new-url";
}
await next();
});
app.Use(async (context,next) =>
{
var url = context.Request.Path.Value;
if (url.Contains("/home/privacy"))
{
context.Response.Redirect("https://fully-qualified-domain-name/etc")
return;
}
await next();
});
public void Configure(IApplicationBuilder app)
{
var options = new RewriteOptions()
.AddRedirectToHttps(301, 5001);
app.UseRewriter(options);
}
@MahdiKarimipour
MahdiKarimipour / url-rewrite-http-to-https.cs
Created June 24, 2021 23:40
Url Rewrite Redirect All Http to Https
public void Configure(IApplicationBuilder app)
{
var options = new RewriteOptions()
.AddRedirectToHttpsPermanent();
app.UseRewriter(options);
}
var rewrite = new RewriteOptions()
.AddRewrite("api/values", "api/default", true);
app.UseRewriter(rewrite);
@MahdiKarimipour
MahdiKarimipour / url-rewrite-with-regex.cs
Created June 24, 2021 23:42
Url Rewrite with Regex
var rewrite = new RewriteOptions()
.AddRewrite(@"^Home/Resource?Id=(\d+)", "Home/$1", true);
app.UseRewriter(rewrite);
@MahdiKarimipour
MahdiKarimipour / url-rewrite-custom-rule.cs
Created June 24, 2021 23:43
Url Rewrite Custom Rule
public class CustomRule : Microsoft.AspNetCore.Rewrite.IRule
{
public void ApplyRule(RewriteContext context)
{
throw new NotImplementedException();
}
}
@MahdiKarimipour
MahdiKarimipour / url-rewrite-custom-rule-sample.cs
Created June 24, 2021 23:43
Url Rewrite Custom Rule Sample
public class CustomRewriteRule : Microsoft.AspNetCore.Rewrite.IRule
{
public void ApplyRule(RewriteContext context)
{
var request = context.HttpContext.Request;
var host = request.Host;
if (host.Host.Contains("yourSampleHost",
StringComparison.OrdinalIgnoreCase))
{
if(host.Port == 8080)
@MahdiKarimipour
MahdiKarimipour / url-rewrite-add-custom-rule-to-collection.cs
Created June 24, 2021 23:44
Url Rewrite Add Custom Rule to Collection
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
var options = new RewriteOptions();
options.Rules.Add(new CustomRewriteRule())
app.UseRewriter(options);
}