Configured to work with SQL
This commit is contained in:
parent
02d8cc4097
commit
373608299b
|
@ -10,4 +10,12 @@
|
|||
<Folder Include="wwwroot\images\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.10" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.10">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -1,7 +1,22 @@
|
|||
namespace Blazor_DotNet8_MovieApp.Data
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Blazor_DotNet8_MovieApp.Models;
|
||||
|
||||
namespace Blazor_DotNet8_MovieApp.Data
|
||||
{
|
||||
public class MovieReviewDbContext
|
||||
public class MovieReviewDbContext:DbContext
|
||||
{
|
||||
|
||||
public MovieReviewDbContext(DbContextOptions<MovieReviewDbContext> options):base(options)
|
||||
{
|
||||
|
||||
}
|
||||
protected override void OnModelCreating(ModelBuilder modelBuilder)
|
||||
{
|
||||
base.OnModelCreating(modelBuilder);
|
||||
|
||||
SeedData.AddMovies(modelBuilder);
|
||||
}
|
||||
|
||||
public DbSet<MovieModel> Movies { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,113 @@
|
|||
using Blazor_DotNet8_MovieApp.Models;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace Blazor_DotNet8_MovieApp.Data
|
||||
{
|
||||
public static class SeedData
|
||||
{
|
||||
public static void AddMovies(ModelBuilder modelBuilder)
|
||||
{
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 1,
|
||||
Title = "Highlander",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Highlander.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 2,
|
||||
Title = "Godfather",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Godfather.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 3,
|
||||
Title = "Last of the Mohicans",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/LastOfTheMohicans.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 4,
|
||||
Title = "Rear Window",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RearWindow.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 5,
|
||||
Title = "Road House",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RoadHouse.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 6,
|
||||
Title = "Star Treck IV",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/StarTreck4.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 7,
|
||||
Title = "Mean Girls",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/MeanGirls.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 8,
|
||||
Title = "Oppenheimer",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Oppenheimer.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
modelBuilder.Entity<MovieModel>().HasData(
|
||||
new MovieModel
|
||||
{
|
||||
Id = 9,
|
||||
Title = "Barbie",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Barbie.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
132
Blazor_DotNet8_MovieApp/Migrations/20230905194403_InitialCreate.Designer.cs
generated
Normal file
132
Blazor_DotNet8_MovieApp/Migrations/20230905194403_InitialCreate.Designer.cs
generated
Normal file
|
@ -0,0 +1,132 @@
|
|||
// <auto-generated />
|
||||
using Blazor_DotNet8_MovieApp.Data;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Blazor_DotNet8_MovieApp.Migrations
|
||||
{
|
||||
[DbContext(typeof(MovieReviewDbContext))]
|
||||
[Migration("20230905194403_InitialCreate")]
|
||||
partial class InitialCreate
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "7.0.10")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("Blazor_DotNet8_MovieApp.Models.MovieModel", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("ImageUrl")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("Review")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Movies");
|
||||
|
||||
b.HasData(
|
||||
new
|
||||
{
|
||||
Id = 1,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Highlander.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Highlander"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 2,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Godfather.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Godfather"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 3,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/LastOfTheMohicans.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Last of the Mohicans"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 4,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RearWindow.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Rear Window"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 5,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RoadHouse.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Road House"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 6,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/StarTreck4.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Star Treck IV"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 7,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/MeanGirls.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Mean Girls"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 8,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Oppenheimer.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Oppenheimer"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 9,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Barbie.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Barbie"
|
||||
});
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,55 @@
|
|||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
|
||||
|
||||
namespace Blazor_DotNet8_MovieApp.Migrations
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class InitialCreate : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.CreateTable(
|
||||
name: "Movies",
|
||||
columns: table => new
|
||||
{
|
||||
Id = table.Column<int>(type: "int", nullable: false)
|
||||
.Annotation("SqlServer:Identity", "1, 1"),
|
||||
Title = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
Description = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
ImageUrl = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||
Review = table.Column<string>(type: "nvarchar(max)", nullable: false)
|
||||
},
|
||||
constraints: table =>
|
||||
{
|
||||
table.PrimaryKey("PK_Movies", x => x.Id);
|
||||
});
|
||||
|
||||
migrationBuilder.InsertData(
|
||||
table: "Movies",
|
||||
columns: new[] { "Id", "Description", "ImageUrl", "Review", "Title" },
|
||||
values: new object[,]
|
||||
{
|
||||
{ 1, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/Highlander.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Highlander" },
|
||||
{ 2, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/Godfather.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Godfather" },
|
||||
{ 3, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/LastOfTheMohicans.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Last of the Mohicans" },
|
||||
{ 4, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/RearWindow.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Rear Window" },
|
||||
{ 5, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/RoadHouse.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Road House" },
|
||||
{ 6, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/StarTreck4.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Star Treck IV" },
|
||||
{ 7, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/MeanGirls.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Mean Girls" },
|
||||
{ 8, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/Oppenheimer.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Oppenheimer" },
|
||||
{ 9, "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ", "/images/movies/Barbie.png", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia", "Barbie" }
|
||||
});
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropTable(
|
||||
name: "Movies");
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,129 @@
|
|||
// <auto-generated />
|
||||
using Blazor_DotNet8_MovieApp.Data;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
||||
using Microsoft.EntityFrameworkCore.Metadata;
|
||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Blazor_DotNet8_MovieApp.Migrations
|
||||
{
|
||||
[DbContext(typeof(MovieReviewDbContext))]
|
||||
partial class MovieReviewDbContextModelSnapshot : ModelSnapshot
|
||||
{
|
||||
protected override void BuildModel(ModelBuilder modelBuilder)
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
modelBuilder
|
||||
.HasAnnotation("ProductVersion", "7.0.10")
|
||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
||||
|
||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
|
||||
|
||||
modelBuilder.Entity("Blazor_DotNet8_MovieApp.Models.MovieModel", b =>
|
||||
{
|
||||
b.Property<int>("Id")
|
||||
.ValueGeneratedOnAdd()
|
||||
.HasColumnType("int");
|
||||
|
||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
|
||||
|
||||
b.Property<string>("Description")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("ImageUrl")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("Review")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.Property<string>("Title")
|
||||
.IsRequired()
|
||||
.HasColumnType("nvarchar(max)");
|
||||
|
||||
b.HasKey("Id");
|
||||
|
||||
b.ToTable("Movies");
|
||||
|
||||
b.HasData(
|
||||
new
|
||||
{
|
||||
Id = 1,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Highlander.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Highlander"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 2,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Godfather.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Godfather"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 3,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/LastOfTheMohicans.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Last of the Mohicans"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 4,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RearWindow.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Rear Window"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 5,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RoadHouse.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Road House"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 6,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/StarTreck4.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Star Treck IV"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 7,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/MeanGirls.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Mean Girls"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 8,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Oppenheimer.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Oppenheimer"
|
||||
},
|
||||
new
|
||||
{
|
||||
Id = 9,
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Barbie.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia",
|
||||
Title = "Barbie"
|
||||
});
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
}
|
||||
}
|
|
@ -35,6 +35,6 @@ else
|
|||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
await Task.Delay(2000);
|
||||
Movies = MovieReviewService?.GetMovies();
|
||||
Movies = await MovieReviewService.GetMovies();
|
||||
}
|
||||
}
|
|
@ -34,7 +34,7 @@ else
|
|||
if (Id != null)
|
||||
{
|
||||
int? id = int.Parse(Id);
|
||||
MovieItem = MovieReviewService?.GetMovieById(id.Value);
|
||||
MovieItem = await MovieReviewService.GetMovieById(id.Value);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,11 +1,17 @@
|
|||
using Blazor_DotNet8_MovieApp;
|
||||
using Blazor_DotNet8_MovieApp.Data;
|
||||
using Blazor_DotNet8_MovieApp.Services;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
var builder = WebApplication.CreateBuilder(args);
|
||||
|
||||
// Add services to the container.
|
||||
builder.Services.AddRazorComponents().AddServerComponents();
|
||||
|
||||
builder.Services.AddDbContextPool<MovieReviewDbContext>(options =>
|
||||
options.UseSqlServer(builder.Configuration.GetConnectionString("MovieReviewDbConnection"))
|
||||
);
|
||||
|
||||
builder.Services.AddScoped<IMovieReviewService, MovieReviewService>();
|
||||
|
||||
var app = builder.Build();
|
||||
|
|
|
@ -4,7 +4,7 @@ namespace Blazor_DotNet8_MovieApp.Services
|
|||
{
|
||||
public interface IMovieReviewService
|
||||
{
|
||||
List<MovieModel>? GetMovies();
|
||||
MovieModel? GetMovieById(int id);
|
||||
Task<List<MovieModel>?> GetMovies();
|
||||
Task<MovieModel?> GetMovieById(int id);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,86 +1,26 @@
|
|||
using Blazor_DotNet8_MovieApp.Models;
|
||||
using Blazor_DotNet8_MovieApp.Data;
|
||||
using Blazor_DotNet8_MovieApp.Models;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace Blazor_DotNet8_MovieApp.Services
|
||||
{
|
||||
public class MovieReviewService : IMovieReviewService
|
||||
{
|
||||
private readonly MovieReviewDbContext movieReviewDbContext;
|
||||
|
||||
private static readonly List<MovieModel> Movies = new List<MovieModel>
|
||||
public MovieReviewService(MovieReviewDbContext movieReviewDbContext)
|
||||
{
|
||||
new MovieModel {
|
||||
Id = 1,
|
||||
Title = "Highlander",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Highlander.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=2,
|
||||
Title = "Godfather",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Godfather.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=3,
|
||||
Title = "Last of the Mohicans",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/LastOfTheMohicans.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=4,
|
||||
Title = "Rear Window",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RearWindow.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=5,
|
||||
Title = "Road House",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/RoadHouse.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=6,
|
||||
Title = "Star Treck IV",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/StarTreck4.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=7,
|
||||
Title = "Mean Girls",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/MeanGirls.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=8,
|
||||
Title = "Oppenheimer",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Oppenheimer.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
},
|
||||
new MovieModel{
|
||||
Id=9,
|
||||
Title = "Barbie",
|
||||
Description = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. ",
|
||||
ImageUrl = "/images/movies/Barbie.png",
|
||||
Review = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum vitae nunc risus. Cras sed ex augue. Etiam rutrum massa at enim sollicitudin scelerisque. Pellentesque dignissim, velit vitae lacinia"
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
public MovieModel? GetMovieById(int id)
|
||||
{
|
||||
return Movies.SingleOrDefault(m => m.Id == id);
|
||||
this.movieReviewDbContext = movieReviewDbContext;
|
||||
}
|
||||
|
||||
public List<MovieModel>? GetMovies()
|
||||
public async Task<MovieModel?> GetMovieById(int id)
|
||||
{
|
||||
return Movies;
|
||||
return await movieReviewDbContext.Movies.SingleOrDefaultAsync(m => m.Id == id);
|
||||
}
|
||||
|
||||
public async Task<List<MovieModel>?> GetMovies()
|
||||
{
|
||||
return await movieReviewDbContext.Movies.ToListAsync<MovieModel>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
{
|
||||
"ConnectionStrings": {
|
||||
"MovieReviewDbConnection": "Server=GRILLED-CHEESE;Database=MovieReviewDB;Trusted_Connection=true;TrustServerCertificate=True"
|
||||
},
|
||||
"Logging": {
|
||||
"LogLevel": {
|
||||
"Default": "Information",
|
||||
|
|
Loading…
Reference in New Issue