der*_*rek 3 c# azure azure-storage asp.net-core
我正在 Visual Studio 2015 中创建一个 ASP.Net 5 WebAPI 应用程序,我需要使用 Azure Blob。
要使用 Azure blob,从官方文档:https : //azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/ 中,您需要放入一个键值对<appSettings />在这样的app.config或web.config文件中:
<appSettings>
<add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=account-name;AccountKey=account-key" />
</appSettings>
Run Code Online (Sandbox Code Playgroud)
但问题是,如果您使用的是 ASP.Net 5,则没有名为app.config或web.config.
所以如果我使用 ASP.Net 5,我应该把StorageConnectionString?
ASP.NET Core 提供了多种不同的配置选项。应用程序配置数据可能来自文件(例如 JSON、XML 等)、环境变量、内存中的集合等。
它与选项模型一起使用,以便您可以将强类型设置注入到您的应用程序中。您还可以创建自定义配置提供程序,这可以为您带来更大的灵活性和可扩展性。
根据您的要求,您可以按照以下步骤来实现您的目的:
在 appsetting.json 中创建一个名为 AzureStorageConfig 的部分:
"AzureStorageConfig": {
"AccountName": "<yourStorageAccountName>",
"AccountKey": "<yourStorageAccountKey>"
}
Run Code Online (Sandbox Code Playgroud)
创建一个名为 AzureStorageConfig 的类,如下所示:
public class AzureStorageConfig
{
public string AccountName { get; set; }
public string AccountKey { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后像这样在 Startup.cs 中配置服务:
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
// Setup options with DI
services.AddOptions();
services.Configure<AzureStorageConfig>(Configuration.GetSection("AzureStorageConfig"));
}
Run Code Online (Sandbox Code Playgroud)
然后通过这样的控制器访问它:
private AzureStorageConfig _storageConfig;
public HomeController(IOptions<AzureStorageConfig> config)
{
_storageConfig = config.Value;
}
Run Code Online (Sandbox Code Playgroud)
更多细节,你可以参考这个教程。
| 归档时间: |
|
| 查看次数: |
2159 次 |
| 最近记录: |