我使用Microsoft Graph将Excel文件转换为Pdfs。总的来说,这很好,但我找不到传播文化的方法。例如,日期总是使用en-us格式打印。
在没有任何效果的情况下,我尝试设置线程文化。
这是我的代码:
public async Task<Stream> ConvertToPdfAsync(string extension, Stream stream)
{
var fileName = $"/temp/ConvertToPdf/{Guid.NewGuid()}.{extension}";
var graphClient = new GraphServiceClient(_authProvider);
await graphClient.Users[_sender]
.Drive
.Root
.ItemWithPath(fileName)
.Content
.Request()
.PutAsync<DriveItem>(stream);
var outStream = await graphClient.Users[_sender]
.Drive
.Root
.ItemWithPath(fileName)
.Content
.Request(new List<Option>() { new QueryOption("format", "pdf") })
.GetAsync();
await graphClient.Users[_sender]
.Drive
.Root
.ItemWithPath(fileName)
.Request()
.DeleteAsync();
return outStream;
}
遗憾的是,目前您无法选择使用Graph API显式指定区域性进行转换。
您可以考虑提交Microsoft Graph功能请求,以便考虑实施该功能。