Go to file
Doug Bunting 53857d052f
Add BasicApi and BasicViews apps
- #7805
- make initial copy of apps from aspnet/Performance repo
  - add apps to solution
  - add Readme for the benchmark apps
- update BasicApi app to actually do authentication and authorization
  - bug in the ported app
- refactor `Main` methods and add `CreateWebHostBuilder(...)` methods
- change projects to understand `$(BenchmarksTargetFramework)`
  - use NuGet.org EF packages to avoid changing the Universe build graph
- use SQLite instead of LocalDb by default
  - remove unnecessary appsettings.json files and JSON configuration support
- add EF migrations
  - (greatly) reduce startup times compared to creating / deleting databases
- add MySql, PostgreSQL, and SqlServer support
  - load BasicApi data in a `DbContext.OnModelCreating(...)` override
    - no longer need seed.sql
  - generalize migrations to support multiple providers
  - use negative seeding indices to work around npgsql/Npgsql.EntityFrameworkCore.PostgreSQL#36
  - work around Pomelo lack of strong name (PomeloFoundation/Pomelo.EntityFrameworkCore.MySql#603)
  - use BenchmarksOnly* properties for EF dependencies
    - see also aspnet/Universe#1224
- drop databases (if SQLite) or migrations (otherwise) in `IApplicationLifetime.ApplicationStopping` handlers
- add functional tests
  - drop SQLite database at end of test run
- add benchmarks automation
  - add anonymous BasicApi action i.e. require no authorization
  - add non-antiforgery BasicViews actions

Address PR comments
- remove `AntiforgeryTestHelper` workarounds
- use `[ApiController]`
- use `ActionResult<Pet>`
- remove unused classes

nits:
- take VS suggestions in added files
- optionally display create and delete SQL scripts for per-database migrations
- merge `InsertData(...)` calls for consistency with most supported EF providers
  - SQLite is the only one that requires separate `INSERT`s and EF does the splitting
2018-06-22 16:41:17 -07:00
.github Fixed typo in issue template 2018-06-11 10:13:54 -07:00
.vsts-pipelines/builds
benchmarkapps Add BasicApi and BasicViews apps 2018-06-22 16:41:17 -07:00
benchmarks/Microsoft.AspNetCore.Mvc.Performance
build Add BasicApi and BasicViews apps 2018-06-22 16:41:17 -07:00
samples/MvcSandbox
src Add IsRequired and DefaultValue to ApiParameterDescription 2018-06-22 06:51:58 -07:00
test Add BasicApi and BasicViews apps 2018-06-22 16:41:17 -07:00
.appveyor.yml
.editorconfig
.gitattributes
.gitignore
.travis.yml
CONTRIBUTING.md
Directory.Build.props
Directory.Build.targets
LICENSE.txt
Mvc.NoFun.sln
Mvc.sln Add BasicApi and BasicViews apps 2018-06-22 16:41:17 -07:00
NuGet.config
NuGetPackageVerifier.json
README.md
Settings.StyleCop
build.cmd
build.sh
korebuild-lock.txt Use feature branch build of Routing to fix build break 2018-06-15 10:34:11 -07:00
korebuild.json
run.cmd
run.ps1
run.sh
version.props

README.md

ASP.NET Core MVC

Note: For ASP.NET MVC 5.x, Web API 2.x, and Web Pages 3.x (not ASP.NET Core), see https://github.com/aspnet/AspNetWebStack

AppVeyor: AppVeyor

Travis: Travis

ASP.NET Core MVC gives you a powerful, patterns-based way to build dynamic websites that enables a clean separation of concerns and gives you full control over markup for enjoyable, agile development. ASP.NET Core MVC includes many features that enable fast, TDD-friendly development for creating sophisticated applications that use the latest web standards.

ASP.NET Core MVC includes support for building web pages and HTTP services in a single aligned framework that can be hosted in IIS or self-hosted in your own process.

See the ASP.NET Core MVC documentation.

Related community projects:

This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at the Home repo.

Building from source

To run a complete build on command line only, execute build.cmd or build.sh without arguments. See developer documentation for more details.