Я все еще новичок в издевательствах, и у меня возникают проблемы с этим кодом:
//create the request
SendEmailFromTemplateRequest emailUsingTemplateReq =
new SendEmailFromTemplateRequest
{
Target = email,
TemplateId = new Guid("07B94C1D-C85F-492F-B120-F0A743C540E6"),
RegardingId = toParty[0].PartyId.Id,
RegardingType = toParty[0].PartyId.LogicalName
};
//retrieve response
SendEmailFromTemplateResponse emailUsingTemplateResponse =
(SendEmailFromTemplateResponse)service.Execute(emailUsingTemplateReq);
var emailId = emailUsingTemplateResponse.Id;
До этого момента у меня не было проблем с издевательством над IOrganizationService, но я что-то не так делаю с методом execute,Согласно sdk метод Execute возвращает объект OrganizationResponse, который необходимо привести в правильный класс ответа.Вот что я пробовал до сих пор:
var idResults = new ParameterCollection();
idResults.Add("Id", Guid.NewGuid());
mockOrganizationService
.Setup(os => os.Execute(It.IsAny<SendEmailFromTemplateRequest>()))
.Returns(new OrganizationResponse
{
Results = idResults,
ResponseName = "SendEmailFromTemplate",
});
Когда я пытаюсь запустить тест, я получаю недопустимое исключение приведения.Я полагаю, что я неправильно настраиваю объект ответа.Может кто-нибудь объяснить мне правильный способ издеваться над методом IOrganizationService.Execute?