Skip to content

Commit

Permalink
Complete ASP.NET Sample including pjax
Browse files Browse the repository at this point in the history
  • Loading branch information
jtheisen committed Jan 25, 2023
1 parent 740aa4d commit 89d2593
Show file tree
Hide file tree
Showing 12 changed files with 954 additions and 43 deletions.
2 changes: 1 addition & 1 deletion Moldinium/Baking/NullableContextAttribute.cs
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ public static void SetNullableAttributes(Action<CustomAttributeBuilder> target,

if (arg is IReadOnlyCollection<CustomAttributeTypedArgument> moreArgs)
{
arg = moreArgs.Select(a => (Byte)a.Value).ToArray();
arg = moreArgs.Select(a => (Byte)a.Value!).ToArray();
}

var builder = new CustomAttributeBuilder(attribute.Constructor, new Object[] { arg } );
Expand Down
3 changes: 3 additions & 0 deletions SampleApp.AspNetMvc/Controllers/HomeController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,20 +13,23 @@ public HomeController(JobList jobList)
this.jobList = jobList;
}

[Route("add-simple")]
public IActionResult AddSimpleJob()
{
jobList.AddSimpleJobCommand.Execute(null);

return RedirectToAction(nameof(Index));
}

[Route("add-complex")]
public IActionResult AddComplexJob()
{
jobList.AddComplexJobCommand.Execute(null);

return RedirectToAction(nameof(Index));
}

[Route("add-cancel")]
public IActionResult Cancel()
{
jobList.CancelCommand.Execute(null);
Expand Down
1 change: 0 additions & 1 deletion SampleApp.AspNetMvc/GlobalUsings.cs

This file was deleted.

4 changes: 2 additions & 2 deletions SampleApp.AspNetMvc/Program.cs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
using Moldinium;
using Moldinium.Injection;
using SampleApp;
using System.Diagnostics;

var builder = WebApplication.CreateBuilder(args);

var services = builder.Services;

// Add services to the container.
services.AddControllersWithViews();
services.AddControllersWithViews().AddRazorRuntimeCompilation();

var configuration = new DefaultDependencyProviderConfiguration(
Baking: DefaultDependencyProviderBakingMode.Basic,
Expand Down
4 changes: 4 additions & 0 deletions SampleApp.AspNetMvc/SampleApp.AspNetMvc.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="6.0.13" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\Moldinium\Moldinium.csproj" />
<ProjectReference Include="..\SampleApp\SampleApp.csproj" />
Expand Down
15 changes: 9 additions & 6 deletions SampleApp.AspNetMvc/Views/Home/Index.cshtml
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
@model SampleApp.JobList
@using SampleApp
@model JobList

@{
ViewData["Title"] = "ASP.NET MVC Job List Sample App";
}

<div class="job-list-page position-relative">
<div class="d-flex gap-2 align-items-center">
<button class="btn btn-primary" asp-action="AddSimpleJob">Add simple job</button>
<button class="btn btn-primary" asp-action="AddComplexJob">Add complex job</button>
<div class="container">
<div class="d-flex gap-2 align-items-center">
<a class="btn btn-primary" asp-action="AddSimpleJob">Add simple job</a>
<a class="btn btn-primary" asp-action="AddComplexJob">Add complex job</a>

<button class="btn btn-warning" asp-action="Cancel">Cancel job</button>
<a class="btn btn-warning" asp-action="Cancel">Cancel job</a>
</div>
</div>

<div class="items mt-4">
<div id="update" class="update items mt-4">
@foreach (var job in Model.Items)
{
<partial name="_Job" model="@job" />
Expand Down
3 changes: 2 additions & 1 deletion SampleApp.AspNetMvc/Views/Home/_ComplexJob.cshtml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
@model SampleApp.ComplexJob
@using SampleApp
@model ComplexJob

<div class="opacity-75">
@foreach (var subJob in Model.SubJobs)
Expand Down
3 changes: 2 additions & 1 deletion SampleApp.AspNetMvc/Views/Home/_Job.cshtml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
@model SampleApp.Job
@using SampleApp
@model Job

@{
var style = $"margin-left: {1 + (Model.NestingLevel?.Level ?? 0)}em";
Expand Down
3 changes: 2 additions & 1 deletion SampleApp.AspNetMvc/Views/Home/_SimpleJob.cshtml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
@model SampleApp.SimpleJob
@using SampleApp
@model SimpleJob

<div class="progress" style="height: 4px;">
<div class="progress-bar" role="progressbar" style="width: @Model.Progress%;"></div>
Expand Down
52 changes: 26 additions & 26 deletions SampleApp.AspNetMvc/Views/Shared/_Layout.cshtml
Original file line number Diff line number Diff line change
Expand Up @@ -9,41 +9,41 @@
<link rel="stylesheet" href="~/SampleApp.AspNetMvc.styles.css" asp-append-version="true" />
</head>
<body>
<header>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
<div class="container-fluid">
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">SampleApp.AspNetMvc</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target=".navbar-collapse" aria-controls="navbarSupportedContent"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="navbar-collapse collapse d-sm-inline-flex justify-content-between">
<ul class="navbar-nav flex-grow-1">
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Index">Home</a>
</li>
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
</li>
</ul>
<div class="container shadow" style="min-height: 100vh; padding: 0">
<header>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
<div class="container">
<a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">Moldinium SampleApp for ASP.NET MVC</a>
</div>
</div>
</nav>
</header>
<div class="container">
<main role="main" class="pb-3">
</nav>
</header>
<main id="main" role="main" class="pb-4">
@RenderBody()
</main>
</div>

<footer class="border-top footer text-muted">
@* <footer class="border-top footer text-muted">
<div class="container">
&copy; 2023 - SampleApp.AspNetMvc - <a asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
&copy; 2023 - Moldinium SampleApp for ASP.NET MVC
</div>
</footer>
<script src="~/lib/jquery/dist/jquery.min.js"></script>
*@ <script src="~/lib/jquery/dist/jquery.min.js"></script>
<script src="~/lib/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="~/js/site.js" asp-append-version="true"></script>
@await RenderSectionAsync("Scripts", required: false)
<script src="~/js/pjax.js"></script>
<script>
(function () {
var reload;
reload = function () {
setTimeout(function () {
$.pjax({ url: '/', container: '#update', fragment: '#update', scrollTo: false })
reload();
}, 500);
};
reload();
})();
</script>
</body>
</html>
4 changes: 0 additions & 4 deletions SampleApp.AspNetMvc/wwwroot/css/site.css
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,3 @@ html {
position: relative;
min-height: 100%;
}

body {
margin-bottom: 60px;
}
Loading

0 comments on commit 89d2593

Please sign in to comment.