Rob*_*opp 3 asp.net ajax web asp.net-web-api
我有两个web api控制器:PageController和BlogController.它们包含用于创建页面和博客的简单方法.每次创建博客时,我都需要创建一个页面,但反之亦然.这是最好的方法吗?感觉好像很奇怪,如果我继承我的路由必须发生PageController在BlogController.有没有一些方法来调用CreatePage的方法PageController从BlogController的CreateBlog方法是什么?每次我想创建一个博客时,我是否应该单独辞职,再进行两次单独的ajax调用?
如果您需要一些需要由多个控制器访问的通用逻辑,您应该创建一个单独的类来以集中方式处理该通用逻辑.
此类可以是Web项目的一部分,也可以是单独的项目/程序集.
基本上你要做的是:
public class BlogController
{
public void CreateBlog()
{
var pc = new PageController();
pc.CreatePage();
}
}
public class PageController
{
private Database db;
public void CreatePage()
{
var page = new Page();
db.SavePage(page);
}
}
Run Code Online (Sandbox Code Playgroud)
我建议你这样做:
public class BlogController
{
public void CreateBlog()
{
Blog.CreatePage();
}
}
public class PageController
{
public void CreatePage()
{
Blog.CreatePage();
}
}
public class Blog
{
private Database db;
public static void CreatePage() // does not
{
var page = new Page();
db.SavePage(page);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7986 次 |
| 最近记录: |