Skip to content

Instantly share code, notes, and snippets.

View StephanyBatista's full-sized avatar

Stephany Henrique Batista StephanyBatista

View GitHub Profile
public class ProductController : Controller
{
private ProductRepository _productRepository;
public ProductController()
{
}
}
public class ProductController : Controller
{
public IActionResult Index()
{
var applicationDbContext = new ApplicationDbContext(null);
var repository = new ProductRepository(applicationDbContext);
return View(repository.GetAll());
}
}
public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(options => {
options.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidateAudience = true,
ValidateLifetime = true,
ValidateIssuerSigningKey = true,
public string Build()
{
var claims = new List<Claim>
{
new Claim(JwtRegisteredClaimNames.Sub, this.subject),
new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
new Claim("NameId", this.nameId)
}
.Union(this.claims.Select(item => new Claim(item.Key, item.Value)));
[Route("api/[controller]")]
public class TokenController : Controller
{
[HttpPost]
public IActionResult Post([FromBody]LoginModel loginModel)
{
if (loginModel.Username != "stephany" && loginModel.Password != "batista")
return Unauthorized();
var token = new JwtTokenBuilder()
@StephanyBatista
StephanyBatista / Startup.cs
Created September 12, 2017 11:37
Old Startup.cs
public class Startup
{
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
@StephanyBatista
StephanyBatista / Startup.cs
Created September 12, 2017 11:37
New Startup.cs
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
@StephanyBatista
StephanyBatista / Program.cs
Created September 12, 2017 11:33
Old program.cs
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
@StephanyBatista
StephanyBatista / Program.cs
Created September 12, 2017 11:30
New program.cs in .Net Core 2.0
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();