Рассмотрим следующий код:
using Microsoft.Office.Interop.Outlook;
using OutlookApp = Microsoft.Office.Interop.Outlook.Application;
namespace OutlookInterop
{
class Program
{
static void Main(string[] args)
{
OutlookApp outlookApp = new OutlookApp();
MailItem mailItem = outlookApp.CreateItem(OlItemType.olMailItem);
mailItem.To = "test@test.com";
mailItem.Subject = "Test Email Alert";
mailItem.HTMLBody = "<html><body>Test email body.</body></html>";
mailItem.Display(false);
}
}
}
Этот код отлично работает, когда я запускаю его в Visual Studio, но когда я использую его в BluePrism, я получаю следующую ошибку компилятора:
Page: Send Email Alert c#
Stage: Code1
Type: Error
Action: Validate
Description: Compiler error at line 2: Cannot implicitly convert type 'object' to 'Microsoft.Office.Interop.Outlook.MailItem'. An explicit conversion exists (are you missing a cast?)
Repairable: No
Я думаю, что я ссылался на правильные сборки в BluePrism, т.е.:
![enter image description here](https://i.stack.imgur.com/x9WEK.jpg)
И тогда это код внутри фактической стадии кода:
OutlookApp outlookApp = new OutlookApp();
MailItem mailItem = outlookApp.CreateItem(OlItemType.olMailItem); //this would be line 2
mailItem.To = "test@test.com";
mailItem.Subject = "Test Email Alert";
mailItem.HTMLBody = "<html><body>Test email body.</body></html>";
mailItem.Display(false);
Итак, почему этот код работает в Visual Studio, а не в BluePrism?что это за актерский состав, который отсутствует?