疑难解惑指南 - 如何删除 Serene 的 Northwind 及其他示例?

优质
小牛编辑
130浏览
2023-12-01

当你以 Northwind 为样本开发完自己的项目后,你会想从项目中移除 Northwind 和其他示例模块。

这里将介绍如何移除它们。

假设你的解决方案名称是 MyProject ,因此在你的解决方案中有 MyProject.Web 项目。

在 Visual Studio 中执行如下步骤:

移除项目文件

  • 移除 MyProject.Web/Modules/AdminLTE 文件夹。这将删除所有主题示例相关的服务器端代码。

  • 移除 MyProject.Web/Modules/BasicSamples 文件夹。这将删除所有基本示例的服务器端代码。

  • 移除 MyProject.Web/Modules/Northwind 文件夹。这将删除所有 Northwind 相关的服务器端代码。

移除导航项目

  • 打开 MyProject.Web/Modules/Common/Navigation/NavigationItems.cs,删除所有含 NorthwindBasic SamplesTheme Samples 的行,并删除下面两行代码:
  1. using Northwind = MovieTutorial.Northwind.Pages;
  2. using Basic = MovieTutorial.BasicSamples.Pages;

移除迁移脚本

删除 MyProject.Web/Modules/Common/Migrations/NorthwindDB/ 文件夹下的所有文件。

MyProject.Web/App_Start/ SiteInitialization.Migrations.cs 的下面行中删除 “Northwind” 。

  1. private static string[] databaseKeys = new[] { "Default", "Northwind" };

同样,从 web.config 删除 Northwind 连接字符串。

  1. <add name="Northwind" connectionString="Data Source=(LocalDb)\v11.0;
  2. Initial Catalog=MovieTutorial_Northwind_v1;
  3. Integrated Security=True"
  4. providerName="System.Data.SqlClient" />

移除 LESS 记录

  • 打开 MyProject.Web/Content/site/site.less 文件,删除下面的代码:
  1. @import "site.basicsamples.less";
  2. @import "site.northwind.less";
  • 删除 MyProject.Web/Content/site/site.basicsamples.less 文件。
  • 删除 MyProject.Web/Content/site/site.northwind.less 文件。

移除本地化文本

  • 打开 MyProject.Web/Modules/Texts.cs 文件,并删除下面的代码:
  1. public static LocalText NorthwindPhone = "...";
  2. public static LocalText NorthwindPhoneMultiple = "...";
  • 删除文件夹 MyProject.Web/Scripts/site/texts/northwind
  • 删除文件夹 MyProject.Web/Scripts/site/texts/samples

移除 Northwind / Samples 生成的代码

  • 展开 MyProject.Web/Modules/Common/Imports/ ServerTypings/ServerTypings.tt。删除以 NorthwindBasicSamples 开头的文件。

移除控制面板(Dashboard)中的 Northwind 数字

打开 DashboardPage.cs,删除 using 行:

  1. using Northwind;
  2. using Northwind.Entities;

由于控制面板从 Northwind 表获取数据,你应该把 Index() 操作修改为:

  1. [Authorize, HttpGet, Route("~/")]
  2. public ActionResult Index()
  3. {
  4. var cachedModel = new DashboardPageModel()
  5. {
  6. };
  7. return View(MVC.Views.Common.Dashboard.DashboardIndex, cachedModel);
  8. }

你应该替换该模块为你网站的具体内容,并相应地修改 DashboardIndex。

打开 DashboardIndex.cshtml,清除包含 “Northwind” 的 href 属性内容,如:

  1. <a href="~/Northwind/Order?shippingState=1"></a>
  2. <a href=""></a>

生成项目并运行 T4 (.tt) 模板

  • 现在重新生成你的解决方案;

  • 在执行下一步骤前,请确保 成功 生成;

  • 点击 生成 菜单,然后点击 转换所有模板

  • 再次重新生成解决方案。

  • 在整个解决方案中搜索 NorthwindBasic SamplesTheme Samples,应该找不到任何结果。

  • 运行项目,现在已经没有 Northwind 和 Sample 菜单。

移除 Northwind 表

Northwind 的表都在一个单独的数据库中,因此,删除该数据库即可。