gpt4 book ai didi

c#mvc区域文件夹结构和类名

转载 作者:行者123 更新时间:2023-11-30 20:08:58 25 4
gpt4 key购买 nike

我有一个 Web 项目,其中的文件夹是在 areas 中构建的。在那里,我有两个主要文件夹:Admin 和 Home。在主页部分,我将放置与最终用户有关的所有内容,而管理员将是我的后台办公室。在 Admin 文件夹中,我将 Models 和 Views 分成子文件夹。像下面的例子:

Areas
- Admin
- Controllers
- CategoryController.cs
- UserController.cs
- Models
- Category
- Edit.cs
- Create.cs
- Index.cs
- User
- Edit.cs
- Create.cs
- Index.cs
- Views
- Category
- Edit.cshtml
- Create.cshtml
- Index.cshtml
- User
- Edit.cshtml
- Create.cshtml
- Index.cshtml
- Home
...

我想到目前为止还不错。由于我使用的是 Linq to Sql,并且其中有一个名为 Category 的表,命名空间和表名给我带来了一些问题。在 Category/Edit.cs 中说:

namespace MyProject.Areas.Admin.Models.Category
{
public class Edit
{
public IQuaryable<Category> // this throws an intellisense error since it
// understands "Category" as the folder/namespace
// instead of the table name in linq to sql class

嗯,我知道解决方案很简单:将表名更改为其他名称。但是为了代码的可读性,我想要一个清晰的表名和一个清晰的 URL 我希望文件夹名称保留为类别。那么有人能告诉我如何区分 namespace 和表类吗?

编辑

虽然我喜欢这个答案,但我重新设计了我的文件夹结构和类名。虽然我保留了 L2S 类名称,但我将模型命名为 ModelCategory 并尝试避免在 Models 文件夹中使用 L2S 类名称进行子文件夹。此外,我将 Edit.cs - Create.cs - Index.cs 合并到 ModelCategory 中,因为它们或多或少使用相同的模型。因此,我删除了模型中的类别子文件夹,问题就消失了。

最佳答案

除了 Yuck 的建议之外,您还可以添加带有别名的 using 语句以使代码不那么冗长,例如:

using L2S = MyProject.SomeLinqToSqlNamespace;

现在您可以将类别实体简单地称为 L2S.Category

关于c#mvc区域文件夹结构和类名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6547853/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com