blog apis for getting like and views

This commit is contained in:
Bangara Raju Kottedi 2024-05-06 23:23:25 +05:30
parent 5c1a50ea64
commit 50c5f87f93
21 changed files with 2088 additions and 96 deletions

View File

@ -1,17 +1,52 @@
using Microsoft.AspNetCore.Http;
using Asp.Versioning;
using AutoMapper;
using Microsoft.AspNetCore.Mvc;
using PortBlog.API.Models;
using PortBlog.API.Repositories.Contracts;
namespace PortBlog.API.Controllers
{
[Route("api/blog")]
[Route("api/v{version:apiVersion}/blog/posts")]
[ApiController]
[ApiVersion(1)]
public class BlogController : ControllerBase
{
private readonly ILogger<BlogController> _logger;
private readonly IBlogRepository _blogRepository;
private readonly IMapper _mapper;
public BlogController(ILogger<BlogController> logger)
public BlogController(ILogger<BlogController> logger, IBlogRepository blogRepository, IMapper mapper)
{
this._logger = logger;
this._blogRepository = blogRepository;
this._mapper = mapper;
}
[HttpGet("GetPostLikesAndViews")]
public async Task<ActionResult> GetPostLikesAndViews(string blogUrl, string postSlug)
{
var postMetrics = new PostMetricsDto();
if(!await this._blogRepository.BlogExistsAsync(blogUrl))
{
_logger.LogInformation($"Blog with id {blogUrl} wasn't found when fetching post likes and views.");
return NotFound();
}
if (!await this._blogRepository.PostExistsAsync(blogUrl, postSlug))
{
_logger.LogInformation($"Post with id {postSlug} wasn't found when fetching post likes and views.");
return Ok(postMetrics);
}
var post = await _blogRepository.GetPostLikesAndViewsAsync(blogUrl, postSlug);
postMetrics = _mapper.Map<PostMetricsDto>(post);
postMetrics.PostExists = true;
return Ok(postMetrics);
}
}
}

View File

@ -175,7 +175,7 @@ namespace PortBlog.API.DbContexts.Seed
ProjectId = 1,
Name = "Transfora (Business Process Management)",
Description = "Business Process Management",
Categories = "Web Development",
Categories = ["Web Development"],
ImagePath = "",
TechnologiesUsed = ".NET, Angular",
Responsibilities = "Developing, Testing, Support",
@ -187,7 +187,7 @@ namespace PortBlog.API.DbContexts.Seed
ProjectId = 2,
Name = "Transfora (Business Process Management)",
Description = "Business Process Management",
Categories = "Web Development",
Categories = ["Web Development"],
ImagePath = "",
TechnologiesUsed = ".NET, Angular",
Responsibilities = "Developing, Testing, Support",
@ -199,7 +199,7 @@ namespace PortBlog.API.DbContexts.Seed
ProjectId = 3,
Name = "Transfora (Business Process Management)",
Description = "Business Process Management",
Categories = "Web Development",
Categories = ["Web Development"],
ImagePath = "",
TechnologiesUsed = ".NET, Angular",
Responsibilities = "Developing, Testing, Support",
@ -229,7 +229,7 @@ namespace PortBlog.API.DbContexts.Seed
Slug = "hello-world",
Title = "Hello World",
Description = "Hello World",
Categories = "Welcome",
Categories = ["Welcome"],
PostUrl = "https://bangararaju.kottedi.in/blog/hello-world",
CreatedDate = DateTime.Now,
BlogUrl = "https://bangararaju.kottedi.in/blog"
@ -240,7 +240,7 @@ namespace PortBlog.API.DbContexts.Seed
Slug = "hello-world",
Title = "Hello World",
Description = "Hello World",
Categories = "Welcome",
Categories = ["Welcome"],
PostUrl = "https://bangararaju.kottedi.in/blog/hello-world",
CreatedDate = DateTime.Now,
BlogUrl = "https://bangararaju.kottedi.in/blog"
@ -251,7 +251,7 @@ namespace PortBlog.API.DbContexts.Seed
Slug = "hello-world",
Title = "Hello World",
Description = "Hello World",
Categories = "Welcome",
Categories = ["Welcome"],
PostUrl = "https://bangararaju.kottedi.in/blog/hello-world",
CreatedDate = DateTime.Now,
BlogUrl = "https://bangararaju.kottedi.in/blog",

View File

@ -23,7 +23,7 @@ namespace PortBlog.API.Entities
[Required]
[MaxLength(200)]
public string Categories { get; set; } = string.Empty;
public string[] Categories { get; set; } = [];
[MaxLength(100)]
public string? Author { get; set; }

View File

@ -19,7 +19,7 @@ namespace PortBlog.API.Entities
[Required]
[MaxLength(200)]
public string Categories { get; set; } = string.Empty;
public string[] Categories { get; set; } = [];
[Required]
[MaxLength(100)]

View File

@ -12,6 +12,7 @@ namespace PortBlog.API.Extensions
services.AddScoped<ICandidateRepository, CandidateRepository>();
services.AddScoped<IResumeRepository, ResumeRepository>();
services.AddScoped<IMailRepository, MailRepository>();
services.AddScoped<IBlogRepository, BlogRepository>();
return services;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,495 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace PortBlog.API.Migrations
{
/// <inheritdoc />
public partial class categorycolumnchanges : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.UpdateData(
table: "Academics",
keyColumn: "AcademicId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3707), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3707) });
migrationBuilder.UpdateData(
table: "Academics",
keyColumn: "AcademicId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3710), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3711) });
migrationBuilder.UpdateData(
table: "Academics",
keyColumn: "AcademicId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3712), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3713) });
migrationBuilder.UpdateData(
table: "Blogs",
keyColumn: "BlogUrl",
keyValue: "https://bangararaju.kottedi.in/blog",
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3796), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3796) });
migrationBuilder.UpdateData(
table: "Candidates",
keyColumn: "CandidateId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3501), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3517) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3896), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3896) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3899), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3899) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3900), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3901) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3902), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3902) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 5,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3903), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3904) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 6,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3905), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3906) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 7,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3907), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3907) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 8,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3908), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3909) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3858), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3859) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3863), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3864) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3866), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3867) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3869), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3869) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3673), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3673) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3678), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3678) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3680), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3680) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3682), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3682) });
migrationBuilder.UpdateData(
table: "Posts",
keyColumn: "PostId",
keyValue: 1,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "[\"Welcome\"]", new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3816), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3812) });
migrationBuilder.UpdateData(
table: "Posts",
keyColumn: "PostId",
keyValue: 2,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "[\"Welcome\"]", new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3821), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3819) });
migrationBuilder.UpdateData(
table: "Posts",
keyColumn: "PostId",
keyValue: 3,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "[\"Welcome\"]", new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3824), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3823) });
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "ProjectId",
keyValue: 1,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "[\"Web Development\"]", new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3769), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3769) });
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "ProjectId",
keyValue: 2,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "[\"Web Development\"]", new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3774), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3774) });
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "ProjectId",
keyValue: 3,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "[\"Web Development\"]", new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3777), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3777) });
migrationBuilder.UpdateData(
table: "Resumes",
keyColumn: "ResumeId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3630), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3630) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3735), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3736) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3738), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3739) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3740), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3741) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3742), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3742) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 5,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3743), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3743) });
migrationBuilder.UpdateData(
table: "SocialLinks",
keyColumn: "Id",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3652), new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3652) });
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.UpdateData(
table: "Academics",
keyColumn: "AcademicId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6162), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6162) });
migrationBuilder.UpdateData(
table: "Academics",
keyColumn: "AcademicId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6166), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6166) });
migrationBuilder.UpdateData(
table: "Academics",
keyColumn: "AcademicId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6168), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6168) });
migrationBuilder.UpdateData(
table: "Blogs",
keyColumn: "BlogUrl",
keyValue: "https://bangararaju.kottedi.in/blog",
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6248), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6248) });
migrationBuilder.UpdateData(
table: "Candidates",
keyColumn: "CandidateId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(5877), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(5895) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6333), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6333) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6336), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6337) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6338), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6338) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6339), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6340) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 5,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6341), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6341) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 6,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6343), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6343) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 7,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6344), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6345) });
migrationBuilder.UpdateData(
table: "ExperienceDetails",
keyColumn: "Id",
keyValue: 8,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6346), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6346) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6297), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6297) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6302), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6302) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6305), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6305) });
migrationBuilder.UpdateData(
table: "Experiences",
keyColumn: "ExperienceId",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6307), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6308) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6128), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6128) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6134), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6135) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6137), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6137) });
migrationBuilder.UpdateData(
table: "Hobbies",
keyColumn: "HobbyId",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6139), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6139) });
migrationBuilder.UpdateData(
table: "Posts",
keyColumn: "PostId",
keyValue: 1,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "Welcome", new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6269), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6266) });
migrationBuilder.UpdateData(
table: "Posts",
keyColumn: "PostId",
keyValue: 2,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "Welcome", new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6274), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6273) });
migrationBuilder.UpdateData(
table: "Posts",
keyColumn: "PostId",
keyValue: 3,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "Welcome", new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6277), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6276) });
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "ProjectId",
keyValue: 1,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "Web Development", new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6218), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6219) });
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "ProjectId",
keyValue: 2,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "Web Development", new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6224), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6225) });
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "ProjectId",
keyValue: 3,
columns: new[] { "Categories", "CreatedDate", "ModifiedDate" },
values: new object[] { "Web Development", new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6227), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6227) });
migrationBuilder.UpdateData(
table: "Resumes",
keyColumn: "ResumeId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6082), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6082) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6187), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6187) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 2,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6191), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6191) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 3,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6193), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6193) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 4,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6194), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6195) });
migrationBuilder.UpdateData(
table: "Skills",
keyColumn: "SkillId",
keyValue: 5,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6196), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6196) });
migrationBuilder.UpdateData(
table: "SocialLinks",
keyColumn: "Id",
keyValue: 1,
columns: new[] { "CreatedDate", "ModifiedDate" },
values: new object[] { new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6106), new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6106) });
}
}
}

View File

@ -75,35 +75,35 @@ namespace PortBlog.API.Migrations
new
{
AcademicId = 1,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6162),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3707),
Degree = "High School",
EndYear = 2007,
Institution = "Pragati Little Public School",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6162),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3707),
ResumeId = 1,
StartYear = 2006
},
new
{
AcademicId = 2,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6166),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3710),
Degree = "Intermediate",
DegreeSpecialization = "MPC",
EndYear = 2009,
Institution = "Sri Chaitanya Junior College",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6166),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3711),
ResumeId = 1,
StartYear = 2007
},
new
{
AcademicId = 3,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6168),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3712),
Degree = "BTech",
DegreeSpecialization = "ECE",
EndYear = 2013,
Institution = "Kakinada Institute of Technology & Science",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6168),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3713),
ResumeId = 1,
StartYear = 2009
});
@ -144,9 +144,9 @@ namespace PortBlog.API.Migrations
new
{
BlogUrl = "https://bangararaju.kottedi.in/blog",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6248),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3796),
Description = "Your Hub for Tech, DIY, and Innovation",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6248),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3796),
Name = "Engineer's Odyssey"
});
});
@ -213,13 +213,13 @@ namespace PortBlog.API.Migrations
{
CandidateId = 1,
Address = "Samalkot, Andhra Pradesh, India",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(5877),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3501),
Dob = new DateTime(1992, 5, 6, 0, 0, 0, 0, DateTimeKind.Unspecified),
Email = "bangararaju.kottedi@gmail.com",
FirstName = "Bangara Raju",
Gender = "Male",
LastName = "Kottedi",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(5895),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3517),
Phone = "+91 9441212187"
});
});
@ -366,11 +366,11 @@ namespace PortBlog.API.Migrations
{
ExperienceId = 1,
Company = "Agility E Services",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6297),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3858),
Description = "",
EndDate = new DateTime(2016, 4, 25, 0, 0, 0, 0, DateTimeKind.Unspecified),
Location = "Hyderabad",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6297),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3859),
ResumeId = 1,
StartDate = new DateTime(2015, 9, 2, 0, 0, 0, 0, DateTimeKind.Unspecified),
Title = "Jr. Software Engineer"
@ -379,11 +379,11 @@ namespace PortBlog.API.Migrations
{
ExperienceId = 2,
Company = "Agility",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6302),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3863),
Description = "",
EndDate = new DateTime(2022, 1, 31, 0, 0, 0, 0, DateTimeKind.Unspecified),
Location = "Kuwait",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6302),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3864),
ResumeId = 1,
StartDate = new DateTime(2016, 5, 12, 0, 0, 0, 0, DateTimeKind.Unspecified),
Title = "Web Developer"
@ -392,11 +392,11 @@ namespace PortBlog.API.Migrations
{
ExperienceId = 3,
Company = "Agility",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6305),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3866),
Description = "",
EndDate = new DateTime(2022, 10, 31, 0, 0, 0, 0, DateTimeKind.Unspecified),
Location = "Kuwait",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6305),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3867),
ResumeId = 1,
StartDate = new DateTime(2022, 2, 1, 0, 0, 0, 0, DateTimeKind.Unspecified),
Title = "Senior Web Developer"
@ -405,11 +405,11 @@ namespace PortBlog.API.Migrations
{
ExperienceId = 4,
Company = "Agility E Services",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6307),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3869),
Description = "",
EndDate = new DateTime(2024, 4, 12, 0, 0, 0, 0, DateTimeKind.Unspecified),
Location = "Hyderabad",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6308),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3869),
ResumeId = 1,
StartDate = new DateTime(2022, 11, 4, 0, 0, 0, 0, DateTimeKind.Unspecified),
Title = "Technology Specialist"
@ -457,73 +457,73 @@ namespace PortBlog.API.Migrations
new
{
Id = 1,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6333),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3896),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 1,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6333),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3896),
Order = 1
},
new
{
Id = 2,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6336),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3899),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 1,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6337),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3899),
Order = 2
},
new
{
Id = 3,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6338),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3900),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 2,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6338),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3901),
Order = 1
},
new
{
Id = 4,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6339),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3902),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 2,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6340),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3902),
Order = 2
},
new
{
Id = 5,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6341),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3903),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 3,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6341),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3904),
Order = 1
},
new
{
Id = 6,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6343),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3905),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 3,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6343),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3906),
Order = 2
},
new
{
Id = 7,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6344),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3907),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 4,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6345),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3907),
Order = 1
},
new
{
Id = 8,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6346),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3908),
Details = "Worked on the YouTube Captions team, in Javascript and Python to plan, to design and develop the full stack to add and edit Automatic Speech Recognition captions.",
ExperienceId = 4,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6346),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3909),
Order = 2
});
});
@ -578,10 +578,10 @@ namespace PortBlog.API.Migrations
new
{
HobbyId = 1,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6128),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3673),
Description = "Crafting Professional-Quality Websites with Precision",
Icon = "fa-square-terminal",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6128),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3673),
Name = "Web Development",
Order = 1,
ResumeId = 1
@ -589,10 +589,10 @@ namespace PortBlog.API.Migrations
new
{
HobbyId = 2,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6134),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3678),
Description = "Streamlining and Simplifying Complex Tasks through Automation",
Icon = "fa-robot",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6135),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3678),
Name = "Automation",
Order = 2,
ResumeId = 1
@ -600,10 +600,10 @@ namespace PortBlog.API.Migrations
new
{
HobbyId = 3,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6137),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3680),
Description = "Sharing the knowledge and insights Ive gathered along my journey",
Icon = "fa-typewriter",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6137),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3680),
Name = "Blogging",
Order = 3,
ResumeId = 1
@ -611,10 +611,10 @@ namespace PortBlog.API.Migrations
new
{
HobbyId = 4,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6139),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3682),
Description = "Cultivating Nature's Beauty and Bounty",
Icon = "fa-seedling",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6139),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3682),
Name = "Gardening",
Order = 4,
ResumeId = 1
@ -748,12 +748,12 @@ namespace PortBlog.API.Migrations
{
PostId = 1,
BlogUrl = "https://bangararaju.kottedi.in/blog",
Categories = "Welcome",
Categories = "[\"Welcome\"]",
Comments = 0,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6269),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3816),
Description = "Hello World",
Likes = 0,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6266),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3812),
PostUrl = "https://bangararaju.kottedi.in/blog/hello-world",
Slug = "hello-world",
Title = "Hello World",
@ -763,12 +763,12 @@ namespace PortBlog.API.Migrations
{
PostId = 2,
BlogUrl = "https://bangararaju.kottedi.in/blog",
Categories = "Welcome",
Categories = "[\"Welcome\"]",
Comments = 0,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6274),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3821),
Description = "Hello World",
Likes = 0,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6273),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3819),
PostUrl = "https://bangararaju.kottedi.in/blog/hello-world",
Slug = "hello-world",
Title = "Hello World",
@ -778,12 +778,12 @@ namespace PortBlog.API.Migrations
{
PostId = 3,
BlogUrl = "https://bangararaju.kottedi.in/blog",
Categories = "Welcome",
Categories = "[\"Welcome\"]",
Comments = 0,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6277),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3824),
Description = "Hello World",
Likes = 0,
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6276),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3823),
PostUrl = "https://bangararaju.kottedi.in/blog/hello-world",
Slug = "hello-world",
Title = "Hello World",
@ -880,11 +880,11 @@ namespace PortBlog.API.Migrations
new
{
ProjectId = 1,
Categories = "Web Development",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6218),
Categories = "[\"Web Development\"]",
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3769),
Description = "Business Process Management",
ImagePath = "",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6219),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3769),
Name = "Transfora (Business Process Management)",
Responsibilities = "Developing, Testing, Support",
ResumeId = 1,
@ -894,11 +894,11 @@ namespace PortBlog.API.Migrations
new
{
ProjectId = 2,
Categories = "Web Development",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6224),
Categories = "[\"Web Development\"]",
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3774),
Description = "Business Process Management",
ImagePath = "",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6225),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3774),
Name = "Transfora (Business Process Management)",
Responsibilities = "Developing, Testing, Support",
ResumeId = 1,
@ -908,11 +908,11 @@ namespace PortBlog.API.Migrations
new
{
ProjectId = 3,
Categories = "Web Development",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6227),
Categories = "[\"Web Development\"]",
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3777),
Description = "Business Process Management",
ImagePath = "",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6227),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3777),
Name = "Transfora (Business Process Management)",
Responsibilities = "Developing, Testing, Support",
ResumeId = 1,
@ -969,8 +969,8 @@ namespace PortBlog.API.Migrations
ResumeId = 1,
About = "I'm Full Stack Developer with 8+ years of hands-on experience in .NET development. Passionate and driven professional with expertise in .NET WebAPI, Angular, CI/CD, and a growing proficiency in Azure. I've successfully delivered robust applications, prioritizing efficiency and user experience. While I'm currently in the early stages of exploring Azure, I'm eager to expand my skill set and leverage cloud technologies to enhance scalability and performance. Known for my proactive approach and dedication to continuous learning, I'm committed to staying abreast of the latest technologies and methodologies to drive innovation and deliver exceptional results.",
CandidateId = 1,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6082),
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6082),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3630),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3630),
Order = 1,
Title = "Full Stack Developer"
});
@ -1071,8 +1071,8 @@ namespace PortBlog.API.Migrations
new
{
SkillId = 1,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6187),
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6187),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3735),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3736),
Name = "Web Development",
ProficiencyLevel = 80,
ResumeId = 1
@ -1080,8 +1080,8 @@ namespace PortBlog.API.Migrations
new
{
SkillId = 2,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6191),
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6191),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3738),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3739),
Name = "Web Development",
ProficiencyLevel = 80,
ResumeId = 1
@ -1089,8 +1089,8 @@ namespace PortBlog.API.Migrations
new
{
SkillId = 3,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6193),
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6193),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3740),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3741),
Name = "Web Development",
ProficiencyLevel = 80,
ResumeId = 1
@ -1098,8 +1098,8 @@ namespace PortBlog.API.Migrations
new
{
SkillId = 4,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6194),
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6195),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3742),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3742),
Name = "Web Development",
ProficiencyLevel = 80,
ResumeId = 1
@ -1107,8 +1107,8 @@ namespace PortBlog.API.Migrations
new
{
SkillId = 5,
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6196),
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6196),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3743),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3743),
Name = "Web Development",
ProficiencyLevel = 80,
ResumeId = 1
@ -1181,10 +1181,10 @@ namespace PortBlog.API.Migrations
{
Id = 1,
BlogUrl = "https://bangararaju.kottedi.in/blog",
CreatedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6106),
CreatedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3652),
GitHub = "https://github.com/rajukottedi",
Linkedin = "https://in.linkedin.com/in/bangara-raju-kottedi-299072109",
ModifiedDate = new DateTime(2024, 5, 2, 14, 46, 47, 828, DateTimeKind.Local).AddTicks(6106),
ModifiedDate = new DateTime(2024, 5, 6, 22, 33, 10, 710, DateTimeKind.Local).AddTicks(3652),
ResumeId = 1
});
});

View File

@ -69,7 +69,7 @@
var projectCategories = new List<string>();
foreach (var project in Projects)
{
projectCategories.AddRange(project.CategoryList);
projectCategories.AddRange(project.Categories);
}
return projectCategories.Distinct().ToList();
}

View File

@ -0,0 +1,29 @@
namespace PortBlog.API.Models
{
public class PostCreatedDto
{
public int PostId { get; set; }
public string Slug { get; set; } = string.Empty;
public string Title { get; set; } = string.Empty;
public string Description { get; set; } = string.Empty;
public string[] Categories { get; set; } = [];
public string PostUrl { get; set; } = string.Empty;
public int Likes { get; set; } = 0;
public int Views { get; set; } = 0;
public int Comments { get; set; } = 0;
public string? Image { get; set; }
public string? CreatedDate { get; set; }
public string? ModifiedDate { get; set; }
}
}

View File

@ -10,7 +10,7 @@
public string Description { get; set; } = string.Empty;
public string Categories { get; set; } = string.Empty;
public string[] Categories { get; set; } = [];
public string PostUrl { get; set; } = string.Empty;

View File

@ -0,0 +1,13 @@
namespace PortBlog.API.Models
{
public class PostMetricsDto
{
public int Likes { get; set; } = 0;
public int Views { get; set; } = 0;
public int Comments { get; set; } = 0;
public bool PostExists { get; set; } = false;
}
}

View File

@ -10,9 +10,9 @@ namespace PortBlog.API.Models
public string Description { get; set; } = string.Empty;
public string Categories { get; set; } = string.Empty;
public string[] Categories { get; set; } = [];
public ICollection<string> CategoryList { get; set; } = new List<string>();
//public ICollection<string> CategoryList { get; set; } = new List<string>();
public ICollection<string> Roles { get; set; } = new List<string>();

View File

@ -11,7 +11,7 @@
var projectCategories = new List<string>();
foreach(var project in Projects)
{
projectCategories.AddRange(project.CategoryList);
projectCategories.AddRange(project.Categories);
}
return projectCategories.Distinct().ToList();
}

View File

@ -157,6 +157,18 @@
<member name="M:PortBlog.API.Migrations.ProjectAndPostChanges.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:PortBlog.API.Migrations.categorycolumnchanges">
<inheritdoc />
</member>
<member name="M:PortBlog.API.Migrations.categorycolumnchanges.Up(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:PortBlog.API.Migrations.categorycolumnchanges.Down(Microsoft.EntityFrameworkCore.Migrations.MigrationBuilder)">
<inheritdoc />
</member>
<member name="M:PortBlog.API.Migrations.categorycolumnchanges.BuildTargetModel(Microsoft.EntityFrameworkCore.ModelBuilder)">
<inheritdoc />
</member>
<member name="T:PortBlog.API.Models.CvDto">
<summary>
CV details of the candidate

View File

@ -18,6 +18,7 @@ namespace PortBlog.API.Profiles
dest => dest.ModifiedDate,
opts => opts.MapFrom(src => src.ModifiedDate != null ? src.ModifiedDate.Value.ToString("MMM dd, yyyy") : string.Empty)
);
CreateMap<Post, PostMetricsDto>();
}
}
}

View File

@ -52,11 +52,6 @@ namespace PortBlog.API.Profiles
(
dest => dest.TechnologiesUsed,
src => src.MapFrom(src => !string.IsNullOrEmpty(src.TechnologiesUsed) ? src.TechnologiesUsed.Split(",", StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries).ToList() : new List<string>())
)
.ForMember
(
dest => dest.CategoryList,
src => src.MapFrom(src => !string.IsNullOrEmpty(src.Categories) ? src.Categories.Split(",", StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries).ToList() : new List<string>())
);
CreateMap<Skill, SkillDto>();

View File

@ -38,6 +38,23 @@ if (!string.IsNullOrEmpty(urls.Value))
builder.WebHost.UseUrls(allowedUrlsToUse);
}
var allowedCorsOrigins = builder.Configuration.GetRequiredSection("AllowedCorsOrigins");
if (!String.IsNullOrEmpty(allowedCorsOrigins.Value))
{
var origins = allowedCorsOrigins.Value.Split(",");
builder.Services.AddCors(options =>
{
options.AddDefaultPolicy(
policy =>
{
policy.WithOrigins(origins);
policy.WithHeaders("XApiKey");
});
});
}
builder.Host.UseSerilog();
// Add services to the container.
@ -139,6 +156,8 @@ builder.Services.AddSwaggerGen(c =>
var app = builder.Build();
app.UseCors();
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler();

View File

@ -23,5 +23,21 @@ namespace PortBlog.API.Repositories
}
return await _cvBlogContext.Blogs.Where(b => b.BlogUrl == blogUrl).FirstOrDefaultAsync();
}
public async Task<Post?> GetPostLikesAndViewsAsync(string blogUrl, string postSlug)
{
return await _cvBlogContext.Posts.Where(p => p.Slug == postSlug && p.BlogUrl == blogUrl).FirstOrDefaultAsync();
}
public async Task<bool> PostExistsAsync(string blogUrl, string postSlug)
{
return await _cvBlogContext.Posts.AnyAsync(p => p.Slug == postSlug && p.BlogUrl == blogUrl);
}
public async Task<bool> BlogExistsAsync(string blogUrl)
{
return await _cvBlogContext.Posts.AnyAsync(b => b.BlogUrl == blogUrl);
}
}
}

View File

@ -5,5 +5,11 @@ namespace PortBlog.API.Repositories.Contracts
public interface IBlogRepository
{
Task<Blog?> GetBlogAsync(string blogUrl, bool includePosts);
Task<Post> GetPostLikesAndViewsAsync(string blogUrl, string postSlug);
Task<bool> PostExistsAsync(string blogUrl, string postSlug);
Task<bool> BlogExistsAsync(string blogUrl);
}
}

View File

@ -17,5 +17,6 @@
"Port": 587,
"Email": "",
"Password": ""
}
},
"AllowedCorsOrigins": "http://localhost:4000,http://127.0.0.1:4000"
}