Я пытаюсь использовать клиент документа Cosmos DB в приложении-функции Azure.Я выполнил шаги, упомянутые здесь - Как я могу использовать пакеты NuGet в своих функциях Azure?
У меня есть зависимость в project.json-
{
"frameworks": {
"net46":{
"dependencies": {
"Microsoft.Azure.DocumentDB.Core": "2.1.3"
}
}
}
}
project.json находится внутри приложения функции, а путь редактора службы приложения выглядит следующим образом:
https://<functionappname>.scm.azurewebsites.net/dev/wwwroot/<functionname>/project.json
Это мой код функции -
#r "Newtonsoft.Json"
#r "Microsoft.Azure.Documents.Client"
using System.Net;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Primitives;
using Newtonsoft.Json;
using System.Net.Http;
using System.Threading.Tasks;
using System.Net.Http.Formatting;
using System.Threading;
using Microsoft.Azure.Documents;
using Microsoft.Azure.Documents.Client;
public static async Task<IActionResult> Run(HttpRequest req, ILogger log)
{
string endPoint = <ep>;
string databaseId = <dbID>;
string collectionId = <cid>;
string documentId = <did>;
string resourceLink = string.Format("dbs/{0}/colls/{1}/docs/{2}", databaseId, collectionId, documentId);
string primaryKey = <pk>;
IDocumentClient documentClient = new DocumentClient(new Uri(endPoint), primaryKey);
var response = documentClient.ReadDocumentAsync(resourceLink).Result;
return new OkObjectResult(response);
}
КогдаЯ сохраняю и запускаю приложение, я не получаю никакой ошибки или ответа.Если я удаляю ссылочные коды CosmosDB, это работает.Ниже приведен код -
#r "Newtonsoft.Json"
using System.Net;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Primitives;
using Newtonsoft.Json;
using System.Net.Http;
using System.Threading.Tasks;
using System.Net.Http.Formatting;
using System.Threading;
public static async Task<IActionResult> Run(HttpRequest req, ILogger log)
{
return new OkObjectResult("response");
}
Я что-то упускаю или делаю это неправильно?Тот же код работает, если я использую его в консольном приложении.Любая помощь с этим, пожалуйста?