Skip to content

Instantly share code, notes, and snippets.

View adlerpagliarini's full-sized avatar

Adler Pagliarini adlerpagliarini

View GitHub Profile
@adlerpagliarini
adlerpagliarini / JsonToCsv.cs
Last active January 14, 2022 02:29
Parser Json to CSV .NET C#
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
namespace JsonParser
{
class Program
{
public class ServiceBase<TEntity> : IServiceBase<TEntity> where TEntity : class, IIdentityEntity
{
protected readonly IRepositoryAsync<TEntity> repository;
public ServiceBase(IRepositoryAsync<TEntity> repository)
{
this.repository = repository;
}
public virtual async Task<TEntity> AddAsync(TEntity obj)
{
  • Input
@"{ 'name': 'Adler', 'secondName': 'Pagliarini',
    'obj1': { 'A': 1 },
    'obj2': { 'B': 2 },
    'objInArr': { 'B': 'B', 'C': { 'CC': 'CC', 'D': { 'DD': 'DDD' } }, InArr: [{ 'Arr': 'Arr_1' }, { 'Arr': 'Arr_2' }] },
    'ArrayN': [{ 'Array1': 1 }, { 'Array1': 11 }, { 'ArrayOfArray': [{ 'AofA': 'AofA_1' }, { 'AofA': 'AofA_2' }] }],
    'ArrayValues': [33, 99]
}";
// https://www.codeproject.com/Questions/1128427/JSON-to-CSV-converter
public static class JsonToCsv
{
public static void JsonStringToCSV(string jsonContent)
{
XmlNode xml = JsonConvert.DeserializeXmlNode("{records:{record:" + jsonContent + "}}");
XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml(xml.InnerXml);
XmlReader xmlReader = new XmlNodeReader(xml);
DataSet dataSet = new DataSet();
public class Startup
{
...
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
app.UseMvc(routerBuilder =>
{
// 2. Enable Dependency Injection on current routes
public static class ODataEntitiesConfiguration
{
public static IEdmModel GetEdmModel(IServiceProvider provider)
{
var builder = new ODataConventionModelBuilder(provider);
builder.EntitySet<Developer>(nameof(Developer)).EntityType
.Expand(SelectExpandType.Automatic)
.Filter()
.OrderBy()
public class Startup
{
...
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
app.UseMvc(routerBuilder =>
{
// 2. Enable Dependency Injection on current routes
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
...
public class DeveloperController : ControllerBase
{
...
[HttpGet]
[Route("{id}")]
// 4. Enable OData
[EnableQuery()]
public async Task<ActionResult<Developer>> Get(int id)
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)