Initial import from local backup (Documents-Playground/pakerpale)

This commit is contained in:
jeonghwa
2026-07-03 05:27:03 +09:00
commit 7543d94a37
38 changed files with 21641 additions and 0 deletions

15
Auth.api.csproj Normal file
View File

@@ -0,0 +1,15 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
<PackageReference Include="Pomelo.EntityFrameworkCore.MySql" Version="2.2.0" />
<PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.11" />
</ItemGroup>
</Project>

View File

@@ -0,0 +1,107 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Authorization;
using Auth.api.Models;
using Newtonsoft.Json;
using Auth.api.Internal;
using Microsoft.Extensions.Logging;
using Auth.api.Services;
using Auth.api.Repositories;
namespace Auth.api.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class UserController : ControllerBase
{
private readonly ILogger _logger;
private UserContext _context;
private PostContext _postContext;
private IUserService _userService;
public UserController(ILogger<UserController> logger, UserContext context, IUserService userService, PostContext postContext)
{
_logger = logger;
_context = context;
_userService = userService;
_postContext = postContext;
if ( _postContext.Posts.Count() == 0 )
{
// 테스트용
// Create a new Student if collection is empty,
// which means you can't delete all Student.
// _postContext.Posts.Add(new Auth.api.Entities.Post { postID=1, postTitle = "ORM", postImage="Entity" });
// _postContext.SaveChanges();
}
}
[AllowAnonymous]
[HttpPost("authenticate")]
public IActionResult Authenticate([FromBody]Auth.api.Entities.User userParam)
{
var user = _userService.Authenticate(userParam.Username, userParam.Password);
if (user == null)
return BadRequest(new { message = "Username or password is incorrect" });
return Ok(user);
}
// GET api/values/5
[HttpGet("posts/{id}")]
public ActionResult<Auth.api.Entities.Post> Get(string id)
{
return Ok(_postContext.Posts.Find(20027));
}
// GET api/values
[HttpGet]
public ActionResult<List<User>> Get()
{
return Ok(_context.GetAllUsers());
}
// GET api/values/5
[HttpGet("{id}")]
public ActionResult<string> Get(int id)
{
return Ok(_context.GetAllUsers());
}
// POST api/values
[HttpPost]
public void Post([FromBody] string value)
{
}
// PUT api/values/5
[HttpPut("{id}")]
public void Put(int id, [FromBody] string value)
{
}
// DELETE api/values/5
[HttpDelete("{id}")]
public void Delete(int id)
{
}
}
}

View File

@@ -0,0 +1,39 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Authorization;
using Auth.api.Services;
using Auth.api.Entities;
namespace WebApi.Controllers
{
[Authorize]
[ApiController]
[Route("[controller]")]
public class UsersController : ControllerBase
{
private IUserService _userService;
public UsersController(IUserService userService)
{
_userService = userService;
}
[AllowAnonymous]
[HttpPost("authenticate")]
public IActionResult Authenticate([FromBody]User userParam)
{
var user = _userService.Authenticate(userParam.Username, userParam.Password);
if (user == null)
return BadRequest(new { message = "Username or password is incorrect" });
return Ok(user);
}
[HttpGet]
public IActionResult GetAll()
{
var users = _userService.GetAll();
return Ok(users);
}
}
}

17
Entities/Post.cs Normal file
View File

@@ -0,0 +1,17 @@
using System;
using System.ComponentModel.DataAnnotations.Schema;
namespace Auth.api.Entities
{
[Table("cm_post")]
public class Post
{
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int postID { get; set; }
public string postTitle { get; set; }
public string postImage { get; set; }
public string datePosted { get; set; }
}
}

12
Entities/User.cs Normal file
View File

@@ -0,0 +1,12 @@
namespace Auth.api.Entities
{
public class User
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Username { get; set; }
public string Password { get; set; }
public string Token { get; set; }
}
}

7
Helpers/AppSettings.cs Normal file
View File

@@ -0,0 +1,7 @@
namespace Auth.api.Helpers
{
public class AppSettings
{
public string Secret { get; set; }
}
}

View File

@@ -0,0 +1,100 @@
using System;
using Microsoft.Extensions.Logging;
namespace Auth.api.Internal
{
public static class LoggerExtensions
{
#region snippet1
private static readonly Action<ILogger, string, Exception> _info;
#endregion
#region snippet2
private static readonly Action<ILogger, string, Exception> _quoteAdded;
#endregion
#region snippet3
private static readonly Action<ILogger, string, int, Exception> _quoteDeleted;
private static readonly Action<ILogger, int, Exception> _quoteDeleteFailed;
#endregion
#region snippet4
private static Func<ILogger, int, IDisposable> _allQuotesDeletedScope;
#endregion
static LoggerExtensions()
{
#region snippet5
_info = LoggerMessage.Define<string>(
LogLevel.Information,
new EventId(1, nameof(info)),
"[API] Request {requested} started.");
#endregion
#region snippet6
_quoteAdded = LoggerMessage.Define<string>(
LogLevel.Information,
new EventId(2, nameof(QuoteAdded)),
"Quote added (Quote = '{Quote}')");
#endregion
// Reserve EventId: 3 (QuoteModified)
#region snippet7
_quoteDeleted = LoggerMessage.Define<string, int>(
LogLevel.Information,
new EventId(4, nameof(QuoteDeleted)),
"Quote deleted (Quote = '{Quote}' Id = {Id})");
_quoteDeleteFailed = LoggerMessage.Define<int>(
LogLevel.Error,
new EventId(5, nameof(QuoteDeleteFailed)),
"Quote delete failed (Id = {Id})");
#endregion
#region snippet8
_allQuotesDeletedScope =
LoggerMessage.DefineScope<int>("All quotes deleted (Count = {Count})");
#endregion
}
#region snippet9
public static void info(this ILogger logger, string message)
{
_info(logger, message, null);
}
#endregion
#region snippet10
public static void QuoteAdded(this ILogger logger, string quote)
{
_quoteAdded(logger, quote, null);
}
#endregion
public static void QuoteModified(this ILogger logger, string id, string priorQuote, string newQuote)
{
// Reserve for future feature
}
#region snippet11
public static void QuoteDeleted(this ILogger logger, string quote, int id)
{
_quoteDeleted(logger, quote, id, null);
}
public static void QuoteDeleteFailed(this ILogger logger, int id, Exception ex)
{
_quoteDeleteFailed(logger, id, ex);
}
#endregion
#region snippet12
public static IDisposable AllQuotesDeletedScope(
this ILogger logger, int count)
{
return _allQuotesDeletedScope(logger, count);
}
#endregion
}
}

17
Models/User.cs Normal file
View File

@@ -0,0 +1,17 @@
using Microsoft.EntityFrameworkCore;
namespace Auth.api.Models
{
public class User
{
public int userID { get; set; }
public string userName { get; set; }
public string name { get; set; }
public string email { get; set; }
public string password { get; set; }
}
}

79
Models/UserContext.cs Normal file
View File

@@ -0,0 +1,79 @@
using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using Microsoft.Extensions.Logging;
namespace Auth.api.Models
{
public class UserContext
{
public string ConnectionString { get; set; }
public UserContext(string connectionString)
{
this.ConnectionString = connectionString;
}
// private MySqlConnection GetConnection()
// {
// return new MySqlConnection(ConnectionString);
// }
public List<User> GetAllUsers()
{
List<User> list = new List<User>();
// using (MySqlConnection conn = GetConnection())
// {
// conn.Open();
// MySqlCommand cmd = new MySqlCommand("select * from cm_user where 1 limit 10", conn);
// using (var reader = cmd.ExecuteReader())
// {
// while (reader.Read())
// {
// list.Add(new User()
// {
// userID = Convert.ToInt32(reader["userID"]),
// userName = reader["userName"].ToString(),
// name = reader["name"].ToString(),
// email = reader["email"].ToString(),
// password = reader["password"].ToString()
// });
// }
// }
// }
return list;
}
public List<User> GetUserByUserId()
{
List<User> list = new List<User>();
// using (MySqlConnection conn = GetConnection())
// {
// conn.Open();
// MySqlCommand cmd = new MySqlCommand("select * from cm_user where t 10", conn);
// using (var reader = cmd.ExecuteReader())
// {
// while (reader.Read())
// {
// list.Add(new User()
// {
// userID = Convert.ToInt32(reader["userID"]),
// userName = reader["userName"].ToString(),
// name = reader["name"].ToString(),
// email = reader["email"].ToString(),
// password = reader["password"].ToString()
// });
// }
// }
// }
return list;
}
}
}

24
Program.cs Normal file
View File

@@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
namespace Auth.api
{
public class Program
{
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
}
}

View File

@@ -0,0 +1,30 @@
{
"$schema": "http://json.schemastore.org/launchsettings.json",
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:64514",
"sslPort": 44347
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "api/values",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"Auth.api": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "api/values",
"applicationUrl": "https://localhost:5001;http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}

View File

@@ -0,0 +1,14 @@
using Auth.api.Entities;
using Microsoft.EntityFrameworkCore;
namespace Auth.api.Repositories
{
public class PostContext : DbContext
{
public DbSet<Post> Posts { get; set; }
public PostContext( DbContextOptions<PostContext> options )
: base(options)
{ }
}
}

73
Services/UserService.cs Normal file
View File

@@ -0,0 +1,73 @@
using System;
using System.Collections.Generic;
using System.IdentityModel.Tokens.Jwt;
using System.Linq;
using System.Security.Claims;
using System.Text;
using Microsoft.Extensions.Options;
using Microsoft.IdentityModel.Tokens;
using Auth.api.Entities;
using Auth.api.Helpers;
namespace Auth.api.Services
{
public interface IUserService
{
User Authenticate(string username, string password);
IEnumerable<User> GetAll();
}
public class UserService : IUserService
{
// users hardcoded for simplicity, store in a db with hashed passwords in production applications
private List<User> _users = new List<User>
{
new User { Id = 1, FirstName = "Test", LastName = "User", Username = "test", Password = "test" }
};
private readonly AppSettings _appSettings;
public UserService(IOptions<AppSettings> appSettings)
{
_appSettings = appSettings.Value;
}
public User Authenticate(string username, string password)
{
var user = _users.SingleOrDefault(x => x.Username == username && x.Password == password);
// return null if user not found
if (user == null)
return null;
// authentication successful so generate jwt token
var tokenHandler = new JwtSecurityTokenHandler();
var key = Encoding.ASCII.GetBytes(_appSettings.Secret);
var tokenDescriptor = new SecurityTokenDescriptor
{
Subject = new ClaimsIdentity(new Claim[]
{
new Claim(ClaimTypes.Name, user.Id.ToString())
}),
Expires = DateTime.UtcNow.AddDays(7),
SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
};
var token = tokenHandler.CreateToken(tokenDescriptor);
user.Token = tokenHandler.WriteToken(token);
// remove password before returning
user.Password = null;
return user;
}
public IEnumerable<User> GetAll()
{
// return users without passwords
return _users.Select(x => {
x.Password = null;
return x;
});
}
}
}

119
Startup.cs Normal file
View File

@@ -0,0 +1,119 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpsPolicy;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using MySql.Data.EntityFrameworkCore;
using MySql.Data.EntityFrameworkCore.Extensions;
using Microsoft.IdentityModel.Tokens;
using Microsoft.AspNetCore.Authentication.JwtBearer;
using Auth.api.Models;
using Auth.api.Helpers;
using Auth.api.Services;
using Auth.api.Repositories;
using Microsoft.EntityFrameworkCore;
using Pomelo.EntityFrameworkCore.MySql.Infrastructure;
namespace Auth.api
{
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();
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddCors();
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
// configure strongly typed settings objects
var appSettingsSection = Configuration.GetSection("AppSettings");
services.Configure<AppSettings>(appSettingsSection);
// configure jwt authentication
var appSettings = appSettingsSection.Get<AppSettings>();
var key = Encoding.ASCII.GetBytes(appSettings.Secret);
services.AddAuthentication(x =>
{
x.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
x.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(x =>
{
x.RequireHttpsMetadata = false;
x.SaveToken = true;
x.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuerSigningKey = true,
IssuerSigningKey = new SymmetricSecurityKey(key),
ValidateIssuer = false,
ValidateAudience = false
};
});
// configure DI for application services
services.AddScoped<IUserService, UserService>();
services.Add(new ServiceDescriptor(typeof(UserContext), new UserContext(Configuration.GetConnectionString("DefaultConnection"))));
// Simple ORM db Connection
// services.AddDbContext<PostContext>(opt =>
// opt.UseMySql(Configuration.GetConnectionString("DefaultConnection")));
// Better ORM db Connection Pool
services.AddDbContextPool<PostContext>(
options => options.UseMySql(Configuration.GetConnectionString("DefaultConnection"), // replace with your Connection String
mySqlOptions =>
{
mySqlOptions.ServerVersion(new Version(10, 1, 38), ServerType.MariaDb); // replace with your Server Version and Type
}
));
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseAuthentication();
app.UseMvc();
}
}
}

View File

@@ -0,0 +1,9 @@
{
"Logging": {
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
}

14
appsettings.json Normal file
View File

@@ -0,0 +1,14 @@
{
"AppSettings": {
"Secret": "TP8m7KXUgjW8x4j2"
},
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*",
"ConnectionStrings": {
"DefaultConnection": "server=localhost;port=3306;database=crossmap_dev;user=alex;password=alex88003;SslMode=none"
}
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,9 @@
{
"runtimeOptions": {
"additionalProbingPaths": [
"C:\\Users\\Jeonghwa Koo\\.dotnet\\store\\|arch|\\|tfm|",
"C:\\Users\\Jeonghwa Koo\\.nuget\\packages",
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
]
}
}

View File

@@ -0,0 +1,12 @@
{
"runtimeOptions": {
"tfm": "netcoreapp2.2",
"framework": {
"name": "Microsoft.AspNetCore.App",
"version": "2.2.0"
},
"configProperties": {
"System.GC.Server": true
}
}
}

View File

@@ -0,0 +1,5 @@
{
"version": 1,
"dgSpecHash": "39mrpCZGEIg5bh8up4xiEQXeQVMhLPtDWIjkDQSFaYKUYiAxThhDa5o+3hxtw26TqFwRe2rqzeIpnSr9pmUnug==",
"success": true
}

View File

@@ -0,0 +1,79 @@
{
"format": 1,
"restore": {
"D:\\dev\\crossmap\\cm.net\\CMedia\\Users\\Auth.api\\Auth.api.csproj": {}
},
"projects": {
"D:\\dev\\crossmap\\cm.net\\CMedia\\Users\\Auth.api\\Auth.api.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\dev\\crossmap\\cm.net\\CMedia\\Users\\Auth.api\\Auth.api.csproj",
"projectName": "Auth.api",
"projectPath": "D:\\dev\\crossmap\\cm.net\\CMedia\\Users\\Auth.api\\Auth.api.csproj",
"packagesPath": "C:\\Users\\Jeonghwa Koo\\.nuget\\packages\\",
"outputPath": "D:\\dev\\crossmap\\cm.net\\CMedia\\Users\\Auth.api\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
],
"configFilePaths": [
"C:\\Users\\Jeonghwa Koo\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"netcoreapp2.2"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"netcoreapp2.2": {
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"netcoreapp2.2": {
"dependencies": {
"Microsoft.AspNetCore.App": {
"suppressParent": "All",
"target": "Package",
"version": "[2.2.0, )",
"autoReferenced": true
},
"Microsoft.AspNetCore.Razor.Design": {
"suppressParent": "All",
"target": "Package",
"version": "[2.2.0, )"
},
"Microsoft.NETCore.App": {
"suppressParent": "All",
"target": "Package",
"version": "[2.2.0, )",
"autoReferenced": true
},
"MySql.Data.EntityFrameworkCore": {
"target": "Package",
"version": "[8.0.11, )"
},
"Pomelo.EntityFrameworkCore.MySql": {
"target": "Package",
"version": "[2.2.0, )"
}
},
"imports": [
"net461"
],
"assetTargetFallback": true,
"warn": true
}
}
}
}
}

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Jeonghwa Koo\.nuget\packages\;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">5.1.0</NuGetToolVersion>
</PropertyGroup>
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.2.0\build\netcoreapp2.2\Microsoft.NETCore.App.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.2.0\build\netcoreapp2.2\Microsoft.NETCore.App.props')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.fileproviders.embedded\2.2.0\build\netstandard2.0\Microsoft.Extensions.FileProviders.Embedded.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.fileproviders.embedded\2.2.0\build\netstandard2.0\Microsoft.Extensions.FileProviders.Embedded.props')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.configuration.usersecrets\2.2.0\build\netstandard2.0\Microsoft.Extensions.Configuration.UserSecrets.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.configuration.usersecrets\2.2.0\build\netstandard2.0\Microsoft.Extensions.Configuration.UserSecrets.props')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.entityframeworkcore.design\2.2.0\build\netcoreapp2.0\Microsoft.EntityFrameworkCore.Design.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.entityframeworkcore.design\2.2.0\build\netcoreapp2.0\Microsoft.EntityFrameworkCore.Design.props')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.mvc.razor.extensions\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.mvc.razor.extensions\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.props')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.razor.design\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.razor.design\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Razor.Design.props')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.app\2.2.0\build\netcoreapp2.2\Microsoft.AspNetCore.App.props" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.app\2.2.0\build\netcoreapp2.2\Microsoft.AspNetCore.App.props')" />
</ImportGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_EntityFrameworkCore_Tools Condition=" '$(PkgMicrosoft_EntityFrameworkCore_Tools)' == '' ">C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.entityframeworkcore.tools\2.2.0</PkgMicrosoft_EntityFrameworkCore_Tools>
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\Jeonghwa Koo\.nuget\packages\microsoft.codeanalysis.analyzers\1.1.0</PkgMicrosoft_CodeAnalysis_Analyzers>
<PkgMicrosoft_AspNetCore_Razor_Design Condition=" '$(PkgMicrosoft_AspNetCore_Razor_Design)' == '' ">C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.razor.design\2.2.0</PkgMicrosoft_AspNetCore_Razor_Design>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\netstandard.library\2.0.3\build\netstandard2.0\NETStandard.Library.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.2.0\build\netcoreapp2.2\Microsoft.NETCore.App.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.netcore.app\2.2.0\build\netcoreapp2.2\Microsoft.NETCore.App.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.fileproviders.embedded\2.2.0\build\netstandard2.0\Microsoft.Extensions.FileProviders.Embedded.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.fileproviders.embedded\2.2.0\build\netstandard2.0\Microsoft.Extensions.FileProviders.Embedded.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.configuration.usersecrets\2.2.0\build\netstandard2.0\Microsoft.Extensions.Configuration.UserSecrets.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.extensions.configuration.usersecrets\2.2.0\build\netstandard2.0\Microsoft.Extensions.Configuration.UserSecrets.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.mvc.razor.extensions\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.mvc.razor.extensions\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.server.iisintegration\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Server.IISIntegration.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.server.iisintegration\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Server.IISIntegration.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.server.iis\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Server.IIS.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.server.iis\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Server.IIS.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.mvc.razor.viewcompilation\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.mvc.razor.viewcompilation\2.2.0\build\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.targets')" />
<Import Project="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.app\2.2.0\build\netcoreapp2.2\Microsoft.AspNetCore.App.targets" Condition="Exists('C:\Program Files\dotnet\sdk\NuGetFallbackFolder\microsoft.aspnetcore.app\2.2.0\build\netcoreapp2.2\Microsoft.AspNetCore.App.targets')" />
</ImportGroup>
</Project>

View File

@@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 이 코드는 도구를 사용하여 생성되었습니다.
// 런타임 버전:4.0.30319.42000
//
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
// 이러한 변경 내용이 손실됩니다.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Auth.api")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Auth.api")]
[assembly: System.Reflection.AssemblyTitleAttribute("Auth.api")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// MSBuild WriteCodeFragment 클래스에서 생성되었습니다.

View File

@@ -0,0 +1 @@
9e4d3e97b0e34ede44271ab2801086b7e6829dca

View File

@@ -0,0 +1 @@
e14638d540abe4b15c497e9ccf9576c09ba6c06c

View File

@@ -0,0 +1,20 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 이 코드는 도구를 사용하여 생성되었습니다.
// 런타임 버전:4.0.30319.42000
//
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
// 이러한 변경 내용이 손실됩니다.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.RelatedAssemblyAttribute("Auth.api.Views")]
[assembly: Microsoft.AspNetCore.Razor.Hosting.RazorLanguageVersionAttribute("2.1")]
[assembly: Microsoft.AspNetCore.Razor.Hosting.RazorConfigurationNameAttribute("MVC-2.1")]
[assembly: Microsoft.AspNetCore.Razor.Hosting.RazorExtensionAssemblyNameAttribute("MVC-2.1", "Microsoft.AspNetCore.Mvc.Razor.Extensions")]
// MSBuild WriteCodeFragment 클래스에서 생성되었습니다.

View File

@@ -0,0 +1 @@
d3131bd11713d98298e3159b9648a49222fdc56c

Binary file not shown.

View File

@@ -0,0 +1 @@
63cdfbc863eb305f59a8858c7516fbc3b8aea7f0

View File

@@ -0,0 +1,14 @@
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\bin\Debug\netcoreapp2.2\Auth.api.deps.json
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\bin\Debug\netcoreapp2.2\Auth.api.runtimeconfig.json
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\bin\Debug\netcoreapp2.2\Auth.api.runtimeconfig.dev.json
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\bin\Debug\netcoreapp2.2\Auth.api.dll
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\bin\Debug\netcoreapp2.2\Auth.api.pdb
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.csprojAssemblyReference.cache
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.csproj.CoreCompileInputs.cache
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.RazorAssemblyInfo.cache
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.RazorAssemblyInfo.cs
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.AssemblyInfoInputs.cache
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.AssemblyInfo.cs
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.RazorTargetAssemblyInfo.cache
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.dll
D:\dev\crossmap\cm.net\CMedia\Users\Auth.api\obj\Debug\netcoreapp2.2\Auth.api.pdb

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

12407
obj/project.assets.json Normal file

File diff suppressed because it is too large Load Diff