Asp.net mvc 可以从一个单独的项目运行mvc邮件程序吗

Asp.net mvc 可以从一个单独的项目运行mvc邮件程序吗,asp.net-mvc,email,mvcmailer,postal,actionmailer.net,Asp.net Mvc,Email,Mvcmailer,Postal,Actionmailer.net,我目前正在运行一个MVC网站和一个WebApi,我正在研究电子邮件功能的构建 我有非常轻量级的控制器,将大部分逻辑抽象到服务层,因为它是一个相当大的应用程序,我想让大部分逻辑在MVC和WebApi之间可重用 这让我推迟了使用,因为所有的示例都是在web项目中运行的。如果编写了一个使用WebAPI的手机应用程序,它将无法使用电子邮件功能 我想知道是否有可能从它自己的项目运行它?这是一个非常粗糙的描述我正在尝试做什么 MyProject.Web MyProject.WebApi

我目前正在运行一个MVC网站和一个WebApi,我正在研究电子邮件功能的构建

我有非常轻量级的控制器,将大部分逻辑抽象到服务层,因为它是一个相当大的应用程序,我想让大部分逻辑在MVC和WebApi之间可重用

这让我推迟了使用,因为所有的示例都是在web项目中运行的。如果编写了一个使用WebAPI的手机应用程序,它将无法使用电子邮件功能

我想知道是否有可能从它自己的项目运行它?这是一个非常粗糙的描述我正在尝试做什么

MyProject.Web   MyProject.WebApi
         \          /
          \        /
      MyProject.Services
              |
              |
       MyProject.Email
我可以抽象出
.Web
.WebApi
都是MVC4项目吗

如果没有,那么我将只使用中的或等效的,尽管功能有所减少


编辑:更多信息

再仔细想想,这样做似乎很棘手,因为我必须为电子邮件视图执行一些奇特的复制逻辑,以便它们能够自动与mvc和webapi网站一起部署

也许最好将电子邮件分离到自己的网站,让服务层发出发送电子邮件的web请求,并适当地将其抽象出来

MyProject.Web   MyProject.WebApi
         \          /
          \        /
      MyProject.Services  --http-->  MyProject.Email
我想这样我就可以在一台服务器上部署电子邮件,而不必在所有服务器上都设置smtp。欢迎评论


相关问题


正如我在问题中提到的,我创建了一个单独的电子邮件项目,它本质上是一个基本的webapi项目

MyProject.Web   MyProject.WebApi
         \          /
          \        /
      MyProject.Services  --http-->  MyProject.Email
我现在通过REST服务向电子邮件webapi发送电子邮件


注:

我相信这可能在服务层内部使用。您将创建一个名为email的MVC项目,但绝不直接运行它,并将其作为参考包含在web项目中

这将为您提供intellisense的所有好处,但您可以使用razor生成器将电子邮件视图编译成代码

这种方法的缺点是,如果您有多个web服务器,则必须在所有服务器上安装smtp服务