Browse Source

Merge branch 'master' of https://gitea.nek0.eu/nek0/BuecherwurmAPI with 'DatenbankJonas'

Amedeo
Jonas Schönbach 2 years ago
parent
commit
af576b75d0
  1. 210
      .gitignore
  2. 36
      .vscode/launch.json
  3. 42
      .vscode/tasks.json
  4. 38
      BuecherwurmAPI.csproj
  5. 69
      Controllers/InventarController.cs
  6. 100
      Controllers/KatalogController.cs
  7. 172
      Controllers/LendController.cs
  8. 12
      Data/IBookRepo.cs
  9. 13
      Data/IItemRepo.cs
  10. 26
      Data/KatalogRepo.cs
  11. 23
      Models/Book.cs
  12. 11
      Models/CategoryEnum.cs
  13. 14
      Models/Item.cs
  14. 2
      Models/Lend.cs
  15. 8
      Models/LendTypeEnum.cs
  16. 16
      Models/Magazin.cs
  17. 52
      Program.cs
  18. 30
      Properties/launchSettings.json
  19. 124
      Startup.cs
  20. 9
      appsettings.Development.json
  21. 10
      appsettings.json
  22. BIN
      bin/Debug/netcoreapp3.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll
  23. BIN
      bin/Debug/netcoreapp3.1/AutoMapper.dll
  24. 3599
      bin/Debug/netcoreapp3.1/BuecherwurmAPI.deps.json
  25. BIN
      bin/Debug/netcoreapp3.1/BuecherwurmAPI.dll
  26. BIN
      bin/Debug/netcoreapp3.1/BuecherwurmAPI.exe
  27. BIN
      bin/Debug/netcoreapp3.1/BuecherwurmAPI.pdb
  28. 10
      bin/Debug/netcoreapp3.1/BuecherwurmAPI.runtimeconfig.dev.json
  29. 12
      bin/Debug/netcoreapp3.1/BuecherwurmAPI.runtimeconfig.json
  30. BIN
      bin/Debug/netcoreapp3.1/Microsoft.AspNetCore.JsonPatch.dll
  31. BIN
      bin/Debug/netcoreapp3.1/Microsoft.AspNetCore.Mvc.NewtonsoftJson.dll
  32. BIN
      bin/Debug/netcoreapp3.1/Newtonsoft.Json.Bson.dll
  33. BIN
      bin/Debug/netcoreapp3.1/Newtonsoft.Json.dll
  34. 78
      obj/BuecherwurmAPI.csproj.nuget.dgspec.json
  35. 15
      obj/BuecherwurmAPI.csproj.nuget.g.props
  36. 4
      obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs
  37. 23
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.AssemblyInfo.cs
  38. 1
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.AssemblyInfoInputs.cache
  39. 0
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.MvcApplicationPartsAssemblyInfo.cache
  40. 1
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.RazorTargetAssemblyInfo.cache
  41. BIN
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.assets.cache
  42. 0
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.csproj.CopyComplete
  43. 1
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.csproj.CoreCompileInputs.cache
  44. 24
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.csproj.FileListAbsolute.txt
  45. BIN
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.csprojAssemblyReference.cache
  46. BIN
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.dll
  47. BIN
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.exe
  48. 1
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.genruntimeconfig.cache
  49. BIN
      obj/Debug/netcoreapp3.1/BuecherwurmAPI.pdb
  50. 20524
      obj/Debug/netcoreapp3.1/project.razor.json
  51. 0
      obj/Debug/netcoreapp3.1/staticwebassets/BuecherwurmAPI.StaticWebAssets.Manifest.cache
  52. 1
      obj/Debug/netcoreapp3.1/staticwebassets/BuecherwurmAPI.StaticWebAssets.xml

210
.gitignore

@ -1,6 +1,5 @@
# Created by https://www.gitignore.io/api/git,rider,linux,csharp,windows,dotnetcore,aspnetcore,visualstudio,visualstudiocode
# Edit at https://www.gitignore.io/?templates=git,rider,linux,csharp,windows,dotnetcore,aspnetcore,visualstudio,visualstudiocode
# created by https://www.gitignore.io/api/git,rider,linux,csharp,aspnetcore
# Edit at https://www.gitignore.io/?templates=git,rider,linux,csharp,aspnetcore
### ASPNETCore ###
## Ignore Visual Studio temporary files, build results, and
@ -477,16 +476,6 @@ healthchecksdb
# Backup folder for Package Reference Convert tool in Visual Studio 2017
MigrationBackup/
### DotnetCore ###
# .NET Core build folders
/bin
/obj
# Common node modules locations
/node_modules
/wwwroot/node_modules
### Git ###
# Created by git for backups. To disable backups in Git:
# $ git config --global mergetool.keepBackup false
@ -586,198 +575,5 @@ fabric.properties
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
### VisualStudioCode ###
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
### VisualStudioCode Patch ###
# Ignore all local history of files
.history
### Windows ###
# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db
# Dump file
*.stackdump
# Folder config file
[Dd]esktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp
# Windows shortcuts
*.lnk
### VisualStudio ###
# User-specific files
# User-specific files (MonoDevelop/Xamarin Studio)
# Mono auto generated files
# Build results
# Visual Studio 2015/2017 cache/options directory
# Uncomment if you have tasks that create the project's static files in wwwroot
# Visual Studio 2017 auto generated files
# MSTest test Results
# NUnit
# Build Results of an ATL Project
# Benchmark Results
# .NET Core
# StyleCop
# Files built by Visual Studio
# Chutzpah Test files
# Visual C++ cache files
# Visual Studio profiler
# Visual Studio Trace Files
# TFS 2012 Local Workspace
# Guidance Automation Toolkit
# ReSharper is a .NET coding add-in
# JustCode is a .NET coding add-in
# TeamCity is a build add-in
# DotCover is a Code Coverage Tool
# AxoCover is a Code Coverage Tool
# Visual Studio code coverage results
# NCrunch
# MightyMoose
# Web workbench (sass)
# Installshield output folder
# DocProject is a documentation generator add-in
# Click-Once directory
# Publish Web Output
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
# NuGet Packages
# NuGet Symbol Packages
# The packages folder can be ignored because of Package Restore
# except build/, which is used as an MSBuild target.
# Uncomment if necessary however generally it will be regenerated when needed
# NuGet v3's project.json files produces more ignorable files
# Microsoft Azure Build Output
# Microsoft Azure Emulator
# Windows Store app package directories and files
# Visual Studio cache files
# files ending in .cache can be ignored
# but keep track of directories ending in .cache
# Others
# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
# RIA/Silverlight projects
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
# SQL Server files
# Business Intelligence projects
# Microsoft Fakes
# GhostDoc plugin setting file
# Node.js Tools for Visual Studio
# Visual Studio 6 build log
# Visual Studio 6 workspace options file
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
# Visual Studio LightSwitch build output
# Paket dependency manager
# FAKE - F# Make
# CodeRush personal settings
# Python Tools for Visual Studio (PTVS)
# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config
# Tabs Studio
# Telerik's JustMock configuration file
# BizTalk build output
# OpenCover UI analysis results
# Azure Stream Analytics local run output
# MSBuild Binary and Structured Log
# NVidia Nsight GPU debugger configuration file
# MFractors (Xamarin productivity tool) working folder
# Local History for Visual Studio
# BeatPulse healthcheck temp database
# Backup folder for Package Reference Convert tool in Visual Studio 2017
# End of https://www.gitignore.io/api/git,rider,linux,csharp,windows,dotnetcore,aspnetcore,visualstudio,visualstudiocode
# End of https://www.gitignore.io/api/git,rider,linux,csharp,aspnetcore

36
.vscode/launch.json

@ -0,0 +1,36 @@
{
// Use IntelliSense to find out which attributes exist for C# debugging
// Use hover for the description of the existing attributes
// For further information visit https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (web)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
// If you have changed target frameworks, make sure to update the program path.
"program": "${workspaceFolder}/bin/Debug/netcoreapp3.1/BuecherwurmAPI.dll",
"args": [],
"cwd": "${workspaceFolder}",
"stopAtEntry": false,
// Enable launching a web browser when ASP.NET Core starts. For more information: https://aka.ms/VSCode-CS-LaunchJson-WebBrowser
"serverReadyAction": {
"action": "openExternally",
"pattern": "^\\s*Now listening on:\\s+(https?://\\S+)"
},
"env": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"sourceFileMap": {
"/Views": "${workspaceFolder}/Views"
}
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach",
"processId": "${command:pickProcess}"
}
]
}

42
.vscode/tasks.json

@ -0,0 +1,42 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "dotnet",
"type": "process",
"args": [
"build",
"${workspaceFolder}/BuecherwurmAPI.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"problemMatcher": "$msCompile"
},
{
"label": "publish",
"command": "dotnet",
"type": "process",
"args": [
"publish",
"${workspaceFolder}/BuecherwurmAPI.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"problemMatcher": "$msCompile"
},
{
"label": "watch",
"command": "dotnet",
"type": "process",
"args": [
"watch",
"run",
"${workspaceFolder}/BuecherwurmAPI.csproj",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"problemMatcher": "$msCompile"
}
]
}

38
BuecherwurmAPI.csproj

@ -1,3 +1,4 @@
<<<<<<< HEAD
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
@ -19,3 +20,40 @@
</Project>
||||||| 22e87cd
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="7.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.4" />
</ItemGroup>
</Project>
=======
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="7.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.4" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="3.1.4" />
</ItemGroup>
<ItemGroup>
<None Remove="LongWormMemory.db" />
<Resource Include="LongWormMemory.db">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Resource>
</ItemGroup>
</Project>
>>>>>>> 9738f3a239ed469853270f7334714b5cc40afe5c

69
Controllers/InventarController.cs

@ -0,0 +1,69 @@
using System.Collections.Generic;
using BuecherwurmAPI.Models;
using Microsoft.AspNetCore.Mvc;
using System.Linq;
//using Microsoft.EntityFrameworkCore;
using BuecherwurmAPI.Data;
namespace BuecherwurmAPI.Controllers
{
[Route("inventar")]
[ApiController]
public class InventarController : ControllerBase
{
private readonly IItemRepo _repository;
public InventarController(IItemRepo repository)
{
_repository = repository;
}
// GET Inventar
[HttpGet]
public ActionResult<IEnumerable<Item>> GetAllItems()
{
var items = _repository.GetAllItems();
return Ok(items);
}
// POST Inventar
[HttpPost]
public ActionResult<IEnumerable<Item>> NewItem(Item item)
{
return Ok(new Item
{
Id = item.Id,
BookId = item.BookId,
});
}
// GET Inventar/{id}
[HttpGet("{id}", Name = "GetItemByID")]
public ActionResult<IEnumerable<Item>> GetItemByID(int id)
{
var item = _repository.GetItemById(id);
if (item != null)
{
return Ok(item);
}
return NoContent();
}
// DELETE inventory/{id}
[HttpDelete("id")]
public ActionResult<IEnumerable<Item>> DeleteItem(int id)
{
var item = _repository.GetItemById(id);
if (item == null)
{
return NotFound();
}
_repository.DeleteItem(item);
return NoContent();
}
}
}

100
Controllers/KatalogController.cs

@ -0,0 +1,100 @@
using System.Collections.Generic;
using BuecherwurmAPI.Models;
using Microsoft.AspNetCore.Mvc;
using System.Linq;
//using Microsoft.EntityFrameworkCore;
using BuecherwurmAPI.Data;
namespace BuecherwurmAPI.Controllers
{
[Route("katalog") ]
[ApiController]
public class KatalogController :ControllerBase
{
private readonly IBookRepo _repository;
public KatalogController (IBookRepo repository)
{
_repository=repository;
}
// GET Katalog
[HttpGet]
public ActionResult<IEnumerable<Book>> GetAllBooks()
{
var books =_repository.GetAllBooks();
return Ok(books);
}
// POST Katalog
[HttpPost]
public ActionResult<IEnumerable<Book>> NeuesBuch(Book book)
{
return Ok(new Book
{
Name = book.Name,
Author= book.Author,
Country= book.Country,
Link= book.Link,
Language= book.Language,
Pages= book.Pages,
Year=book.Year,
ProductId =book.ProductId,
Category= book.Category,
ImageLink =book.ImageLink,
LendTime =book.LendTime,
LendType = book.LendType
});
}
// GET katalog/{id}
[HttpGet("{id}", Name ="GetBookByID")]
public ActionResult <IEnumerable<Book>> GetBookByID(int id)
{
var book = _repository.GetBookById(id);
if (book != null)
{
return Ok(book);
}
return NoContent();
}
// PUT Katalog/{id}
[HttpPut("id")]
public ActionResult<IEnumerable<Book>> BuchBearbeiten(Book book)
{
return Ok(new Book
{
Name = book.Name,
Author= book.Author,
Country= book.Country,
Link= book.Link,
Language= book.Language,
Pages= book.Pages,
Year=book.Year,
ProductId =book.ProductId,
Category= book.Category,
ImageLink =book.ImageLink,
LendTime =book.LendTime,
LendType = book.LendType
});
}
// DELETE katalog/{id}
[HttpDelete("id")]
public ActionResult<IEnumerable<Book>> BuchEntfernen (int id)
{
var book = _repository.GetBookById(id);
if(book == null)
{
return NotFound();
}
_repository.BuchEntfernen(book);
return NoContent();
}
}
}

172
Controllers/LendController.cs

@ -1,3 +1,4 @@
<<<<<<< HEAD
using System;
using System.Collections.Generic;
using System.Linq;
@ -81,3 +82,174 @@ namespace BuecherwurmAPI.Controllers
}
}
}
||||||| 22e87cd
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using AutoMapper;
using BuecherwurmAPI.Data;
using BuecherwurmAPI.DTOs;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.JsonPatch;
using Microsoft.Extensions.Logging;
using BuecherwurmAPI.Models;
namespace BuecherwurmAPI.Controllers
{
[Route("api/leihvorgang")]
[ApiController]
public class LendController : ControllerBase
{
private readonly ILendRepo _repository;
private readonly IMapper _mapper;
public LendController(ILendRepo repository, IMapper mapper)
{
_repository = repository;
_mapper = mapper;
}
//GET api/leihvorgang
[HttpGet]
public ActionResult<IEnumerable<Lend>> LendsGet()
{
return Ok(_repository.GetAllLends());
}
//POST api/leihvorgang
[HttpPost]
public ActionResult<LendReadDTO> LendsPost(Lend lend)
{
/*
Internally a lend is stored with an id
but the client shouldn't be allowed to set or change it
therefore the package 'AutoMapper' is used to prevent errors
that could happen when doing this task manually.
It takes the information from the client and maps it to the
corresponding internal object which then will be returned.
Furthermore it could be used to keep some attributes secret.
Another nice effect of this is that the implementation could be changed
while the interface could be retained by some minor changes in the code.
DTO stands for Data Transfer Object
*/
var item = new Lend
{
Id = 256,
Customer = lend.Customer,
Returned = lend.Returned,
ItemId = lend.ItemId,
ReturnDate = lend.ReturnDate
};
return Ok(item);
//return Ok(_mapper.Map<LendReadDTO>(item));
}
//GET api/leihvorgang/{id}
[HttpGet("{id}")]
public ActionResult<Lend> LendById(int id)
{
var lend = _repository.GetLendById(id);
return Ok(lend);
}
//PATCH api/leihvorgang/{id}
[HttpPatch("{id}")]
public ActionResult LendPatchById(int id, JsonPatchDocument<Lend> patchDocument)
{
var lend = _repository.GetLendById(id);
if (lend == null)
{
return NotFound();
}
return Ok();
}
}
}
=======
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using AutoMapper;
using BuecherwurmAPI.Data;
using BuecherwurmAPI.DTOs;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.JsonPatch;
using Microsoft.Extensions.Logging;
using BuecherwurmAPI.Models;
namespace BuecherwurmAPI.Controllers
{
[Route("api/leihvorgang")]
[ApiController]
public class LendController : ControllerBase
{
private readonly ILendRepo _repository;
private readonly IMapper _mapper;
public LendController(ILendRepo repository, IMapper mapper)
{
_repository = repository;
_mapper = mapper;
}
//GET api/leihvorgang
[HttpGet]
public ActionResult<IEnumerable<Lend>> LendsGet()
{
return Ok(_repository.GetAllLends());
}
//POST api/leihvorgang
[HttpPost]
public ActionResult<LendReadDTO> LendsPost(Lend lend)
{
/*
Internally a lend is stored with an id
but the client shouldn't be allowed to set or change it
therefore the package 'AutoMapper' is used to prevent errors
that could happen when doing this task manually.
It takes the information from the client and maps it to the
corresponding internal object which then will be returned.
Furthermore it could be used to keep some attributes secret.
Another nice effect of this is that the implementation could be changed
while the interface could be retained by some minor changes in the code.
DTO stands for Data Transfer Object
*/
var item = new Lend
{
Id = 256,
Customer = lend.Customer,
Returned = lend.Returned,
ItemId = lend.ItemId,
ReturnDate = lend.ReturnDate
};
return Ok(item);
//return Ok(_mapper.Map<LendReadDTO>(item));
}
//GET api/leihvorgang/{id}
[HttpGet("{id}")]
public ActionResult<Lend> LendById(int id)
{
var lend = _repository.GetLendById(id);
return Ok(lend);
}
//PATCH api/leihvorgang/{id}
[HttpPatch("{id}")]
public ActionResult LendPatchById(int id, JsonPatchDocument<Lend> patchDocument)
{
var lend = _repository.GetLendById(id);
if (lend == null)
{
return NotFound();
}
return Ok();
}
}
}
>>>>>>> 9738f3a239ed469853270f7334714b5cc40afe5c

12
Data/IBookRepo.cs

@ -0,0 +1,12 @@
using System.Collections.Generic;
using BuecherwurmAPI.Models;
namespace BuecherwurmAPI.Data
{
public interface IBookRepo
{
IEnumerable<Book> GetAllBooks();
Book GetBookById(int id);
void BuchEntfernen(Book book);
}
}

13
Data/IItemRepo.cs

@ -0,0 +1,13 @@
using System.Collections.Generic;
using BuecherwurmAPI.Models;
namespace BuecherwurmAPI.Data
{
public interface IItemRepo
{
IEnumerable<Item> GetAllItems();
Item GetItemById(int id);
void NewItem(Item item);
void DeleteItem(Item item);
}
}

26
Data/KatalogRepo.cs

@ -0,0 +1,26 @@
using System.Collections.Generic;
using BuecherwurmAPI.Models;
using Microsoft.AspNetCore.Mvc;
namespace BuecherwurmAPI.Data
{
public class KatalogRepo
{
private readonly object _context;
public KatalogRepo (object context)
{
_context = context;
}
/*public IEnumerable<Book> GetAllBooks()
{
return _context.books.ToList();
}*/
/*public Book GetBookById(int id)
{
return _context.FirstOrDefault(p => p.Id == id);
}*/
}
}

23
Models/Book.cs

@ -0,0 +1,23 @@
using System.ComponentModel.DataAnnotations;
namespace BuecherwurmAPI.Models
{
public class Book
{
public string Name {get; set;}
public string Author {get; set;}
public string Country {get; set;}
public string Link {get; set;}
public string Language {get; set;}
public int Pages {get; set;}
public int Year {get; set;}
[Key]
[Required]
public int ProductId { get; set; }
public CategoryEnum Category { get; set; }
public string ImageLink { get; set; }
public int LendTime {get; set;}
public LendTypeEnum LendType {get; set;}
}
}

11
Models/CategoryEnum.cs

@ -0,0 +1,11 @@
namespace BuecherwurmAPI.Models
{
public enum CategoryEnum
{
Book,
Magazine,
EBook,
EPaper
}
}

14
Models/Item.cs

@ -0,0 +1,14 @@
using System.ComponentModel.DataAnnotations;
namespace BuecherwurmAPI.Models
{
public class Item
{
[Key]
[Required]
public int Id { get; set; }
[Required]
public int BookId { get; set; }
}
}

2
Models/Lend.cs

@ -10,4 +10,4 @@ namespace BuecherwurmAPI.Models
public string Customer { get; set; }
public bool Returned { get; set; }
}
}
}

8
Models/LendTypeEnum.cs

@ -0,0 +1,8 @@
namespace BuecherwurmAPI
{
public enum LendTypeEnum
{
Physical,
Virtual
}
}

16
Models/Magazin.cs

@ -0,0 +1,16 @@
namespace BuecherwurmAPI.Models
{
public class Magazin
{
public int ProductId {get; set;}
public CategoryEnum Category {get; set;}
public int LendTime {get; set;}
public string Name {get; set;}
public string Run {get; set;}
public string Audience {get; set;}
public string Topic {get; set;}
public LendTypeEnum LendType {get; set;}
}
}

52
Program.cs

@ -1,26 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
namespace BuecherwurmAPI
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
namespace BuecherwurmAPI
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}

30
Properties/launchSettings.json

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

124
Startup.cs

@ -1,3 +1,4 @@
<<<<<<< HEAD
using System;
using System.Collections.Generic;
using System.Linq;
@ -58,3 +59,126 @@ namespace BuecherwurmAPI
}
}
}
||||||| 22e87cd
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using AutoMapper;
using BuecherwurmAPI.Data;
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.Hosting;
using Microsoft.Extensions.Logging;
namespace BuecherwurmAPI
{
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.
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
// Adds a service that is created once per connection.
// It takes an interface and a specific implementation.
// That allows to swap the implementation easily.
services.AddScoped<ILendRepo, MockLendRepo>();
services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
}
}
=======
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using AutoMapper;
using BuecherwurmAPI.Data;
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.Hosting;
using Microsoft.Extensions.Logging;
namespace BuecherwurmAPI
{
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.
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
// Adds a service that is created once per connection.
// It takes an interface and a specific implementation.
// That allows to swap the implementation easily.
services.AddScoped<ILendRepo, MockLendRepo>();
services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}
}
}
>>>>>>> 9738f3a239ed469853270f7334714b5cc40afe5c

9
appsettings.Development.json

@ -1,9 +0,0 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
}
}

10
appsettings.json

@ -1,10 +0,0 @@
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*"
}

BIN
bin/Debug/netcoreapp3.1/AutoMapper.Extensions.Microsoft.DependencyInjection.dll

Binary file not shown.

BIN
bin/Debug/netcoreapp3.1/AutoMapper.dll

Binary file not shown.

3599
bin/Debug/netcoreapp3.1/BuecherwurmAPI.deps.json

File diff suppressed because it is too large

BIN
bin/Debug/netcoreapp3.1/BuecherwurmAPI.dll

Binary file not shown.

BIN
bin/Debug/netcoreapp3.1/BuecherwurmAPI.exe

Binary file not shown.

BIN
bin/Debug/netcoreapp3.1/BuecherwurmAPI.pdb

Binary file not shown.

10
bin/Debug/netcoreapp3.1/BuecherwurmAPI.runtimeconfig.dev.json

@ -0,0 +1,10 @@
{
"runtimeOptions": {
"additionalProbingPaths": [
"C:\\Users\\naumanfe\\.dotnet\\store\\|arch|\\|tfm|",
"C:\\Users\\naumanfe\\.nuget\\packages",
"C:\\Microsoft\\Xamarin\\NuGet",
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
]
}
}

12
bin/Debug/netcoreapp3.1/BuecherwurmAPI.runtimeconfig.json

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

BIN
bin/Debug/netcoreapp3.1/Microsoft.AspNetCore.JsonPatch.dll

Binary file not shown.

BIN
bin/Debug/netcoreapp3.1/Microsoft.AspNetCore.Mvc.NewtonsoftJson.dll

Binary file not shown.

BIN
bin/Debug/netcoreapp3.1/Newtonsoft.Json.Bson.dll

Binary file not shown.

BIN
bin/Debug/netcoreapp3.1/Newtonsoft.Json.dll

Binary file not shown.

78
obj/BuecherwurmAPI.csproj.nuget.dgspec.json

@ -0,0 +1,78 @@
{
"format": 1,
"restore": {
"C:\\Users\\naumanfe\\Desktop\\BuecherwurmAPI\\BuecherwurmAPI.csproj": {}
},
"projects": {
"C:\\Users\\naumanfe\\Desktop\\BuecherwurmAPI\\BuecherwurmAPI.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "C:\\Users\\naumanfe\\Desktop\\BuecherwurmAPI\\BuecherwurmAPI.csproj",
"projectName": "BuecherwurmAPI",
"projectPath": "C:\\Users\\naumanfe\\Desktop\\BuecherwurmAPI\\BuecherwurmAPI.csproj",
"packagesPath": "C:\\Users\\naumanfe\\.nuget\\packages\\",
"outputPath": "C:\\Users\\naumanfe\\Desktop\\BuecherwurmAPI\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Microsoft\\Xamarin\\NuGet\\",
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
],
"configFilePaths": [
"C:\\Users\\naumanfe\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Xamarin.Offline.config"
],
"originalTargetFrameworks": [
"netcoreapp3.1"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"netcoreapp3.1": {
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
}
},
"frameworks": {
"netcoreapp3.1": {
"dependencies": {
"AutoMapper.Extensions.Microsoft.DependencyInjection": {
"target": "Package",
"version": "[7.0.0, )"
},
"Microsoft.AspNetCore.Mvc.NewtonsoftJson": {
"target": "Package",
"version": "[3.1.4, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.AspNetCore.App": {
"privateAssets": "none"
},
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\3.1.300\\RuntimeIdentifierGraph.json"
}
}
}
}
}

15
obj/BuecherwurmAPI.csproj.nuget.g.props

@ -0,0 +1,15 @@
<?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\naumanfe\.nuget\packages\;C:\Microsoft\Xamarin\NuGet\;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">5.6.0</NuGetToolVersion>
</PropertyGroup>
<PropertyGroup>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildThisFileFullPath)</MSBuildAllProjects>
</PropertyGroup>
</Project>

4
obj/Debug/netcoreapp3.1/.NETCoreApp,Version=v3.1.AssemblyAttributes.cs

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
//[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v3.1", FrameworkDisplayName = "")]

23
obj/Debug/netcoreapp3.1/BuecherwurmAPI.AssemblyInfo.cs

@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.42000
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("BuecherwurmAPI")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("BuecherwurmAPI")]
[assembly: System.Reflection.AssemblyTitleAttribute("BuecherwurmAPI")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.

1
obj/Debug/netcoreapp3.1/BuecherwurmAPI.AssemblyInfoInputs.cache

@ -0,0 +1 @@
0848efc0ec02497d4272fec239ac4c6242f14bec

0
obj/Debug/netcoreapp3.1/BuecherwurmAPI.MvcApplicationPartsAssemblyInfo.cache

1
obj/Debug/netcoreapp3.1/BuecherwurmAPI.RazorTargetAssemblyInfo.cache

@ -0,0 +1 @@
ed9291efb2fcd04a6651c23e6d75ec73cb57b20c

BIN
obj/Debug/netcoreapp3.1/BuecherwurmAPI.assets.cache

Binary file not shown.

0
obj/Debug/netcoreapp3.1/BuecherwurmAPI.csproj.CopyComplete

1
obj/Debug/netcoreapp3.1/BuecherwurmAPI.csproj.CoreCompileInputs.cache

@ -0,0 +1 @@
6a5350a5cb714167d5d3cf3860661776b39d69a6

24
obj/Debug/netcoreapp3.1/BuecherwurmAPI.csproj.FileListAbsolute.txt

@ -0,0 +1,24 @@
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\BuecherwurmAPI.exe
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\BuecherwurmAPI.deps.json
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\BuecherwurmAPI.runtimeconfig.json
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\BuecherwurmAPI.runtimeconfig.dev.json
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\BuecherwurmAPI.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\BuecherwurmAPI.pdb
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\AutoMapper.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\AutoMapper.Extensions.Microsoft.DependencyInjection.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\Microsoft.AspNetCore.JsonPatch.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\Microsoft.AspNetCore.Mvc.NewtonsoftJson.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\Newtonsoft.Json.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\bin\Debug\netcoreapp3.1\Newtonsoft.Json.Bson.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.csprojAssemblyReference.cache
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.AssemblyInfoInputs.cache
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.AssemblyInfo.cs
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.csproj.CoreCompileInputs.cache
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.MvcApplicationPartsAssemblyInfo.cache
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.RazorTargetAssemblyInfo.cache
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.csproj.CopyComplete
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\staticwebassets\BuecherwurmAPI.StaticWebAssets.Manifest.cache
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\staticwebassets\BuecherwurmAPI.StaticWebAssets.xml
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.dll
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.pdb
C:\Users\naumanfe\Desktop\BuecherwurmAPI\obj\Debug\netcoreapp3.1\BuecherwurmAPI.genruntimeconfig.cache

BIN
obj/Debug/netcoreapp3.1/BuecherwurmAPI.csprojAssemblyReference.cache

Binary file not shown.

BIN
obj/Debug/netcoreapp3.1/BuecherwurmAPI.dll

Binary file not shown.

BIN
obj/Debug/netcoreapp3.1/BuecherwurmAPI.exe

Binary file not shown.

1
obj/Debug/netcoreapp3.1/BuecherwurmAPI.genruntimeconfig.cache

@ -0,0 +1 @@
86c8e15dd33445635927cfaf398408205fd11473

BIN
obj/Debug/netcoreapp3.1/BuecherwurmAPI.pdb

Binary file not shown.

20524
obj/Debug/netcoreapp3.1/project.razor.json

File diff suppressed because it is too large

0
obj/Debug/netcoreapp3.1/staticwebassets/BuecherwurmAPI.StaticWebAssets.Manifest.cache

1
obj/Debug/netcoreapp3.1/staticwebassets/BuecherwurmAPI.StaticWebAssets.xml

@ -0,0 +1 @@
<StaticWebAssets Version="1.0" />
Loading…
Cancel
Save