我已将 Web 引用 (WSDL) 添加到类库中,然后在计时器触发的 c# Azure 函数中引用了该 dll (阅读有关 azure 函数的更多信息)。类库有一个 EmployeeService 类,它从 Web 服务(一种 Web 服务包装器)调用方法。当我从控制台应用程序调用类库方法(GetEmployees)时,它对 Web 服务进行身份验证并返回结果,但是当我为相同的代码和凭据运行 azure 函数时,它返回 401。不知道我在这里做错了什么:
#r "MyConsult.Service.dll"
#r "Newtonsoft.Json.dll"
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Timers;
using Newtonsoft.Json;
using System.Net;
using MyConsult.Service.Service;
public static void Run(TimerInfo myTimer, TraceWriter log)
{
log.Info($"C# Timer trigger function executed at: {DateTime.Now}");
try
{
EmployeeService _empService = new EmployeeService();
var emps = _empService.GetEmployees();
int count = emps.Where(x => !string.IsNullOrEmpty(x.Email)).Select(x => x.Email).Distinct().Count();
log.Info($"employee count : {count}");
}
catch (Exception ex)
{
log.Info($"Exception Message: {ex.Message}");
log.Info($"Exception Stack Trace: { ex.StackTrace}");
}
}