Use MongoDB for database. Add small migrate function from MySQL
This commit is contained in:
parent
313d668bfe
commit
8b240fb077
5 changed files with 31 additions and 5 deletions
|
@ -1,7 +1,9 @@
|
|||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using MongoDB.Driver;
|
||||
using Newtonsoft.Json;
|
||||
using Robware.Api.Blog.Models;
|
||||
using Robware.Blog;
|
||||
|
@ -14,10 +16,12 @@ namespace Robware.Api.Blog.Controllers {
|
|||
|
||||
private readonly ILogger<BlogController> _logger;
|
||||
private readonly IBlogRepository _blogRepository;
|
||||
private readonly IDatabaseProvider _dbProvider;
|
||||
|
||||
public BlogController(ILogger<BlogController> logger, IBlogRepository blogRepository) {
|
||||
public BlogController(ILogger<BlogController> logger, IBlogRepository blogRepository, IDatabaseProvider dbProvider) {
|
||||
_logger = logger;
|
||||
_blogRepository = blogRepository;
|
||||
_dbProvider = dbProvider;
|
||||
}
|
||||
|
||||
[HttpGet(nameof(Get) + "/{url}")]
|
||||
|
@ -117,5 +121,16 @@ namespace Robware.Api.Blog.Controllers {
|
|||
return BadRequest("Tried to publish post that doesn't exist");
|
||||
}
|
||||
}
|
||||
|
||||
[HttpGet(nameof(Migrate))]
|
||||
public async Task<ActionResult> Migrate() {
|
||||
var mysqlRepo = new Data.BlogRepository(_dbProvider);
|
||||
|
||||
var existingPosts = await mysqlRepo.GetAllPostsAsync();
|
||||
foreach (var post in existingPosts)
|
||||
await _blogRepository.SavePost(post);
|
||||
|
||||
return Ok();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue