Azure函数可同时连接到Blob和SQL存储

Joe*_*der 1 c# azure azure-sql-database azure-functions

我认为对于Azure函数来说,这将是一个完美的入门测试用例。

我们在Azure(SQL数据库)中有一个SQL存储。

使用C#,VS 2017更新了Azure工作流项目。

我们也有一个Blob存储。每天晚上,我都需要一个过程来访问SQL数据库,根据条件收集一组记录,然后对其进行处理以生成将存储在Blob存储中的文件。

我似乎无法克服完成这些任务中的任何一个的困难。所有的教程似乎都是最基本的类型。

我在VS 2017中创建了一个函数,但第一步只是连接到SQL数据库。

我去添加一个新项目:ADO.NET实体数据模型,它的行为就像它正确创建了模型一样,但是没有数据上下文吗?

因此,我决定尝试下一步-创建Blob,然后仅使用经过硬编码的示例数据。再次...找不到有关如何执行此操作的良好指南。

我在local.setting.json文件中有一个“ AzureWebJobsStorage”设置。

我在下面有一个计时器功能:

 public static class Function1
{
    [FunctionName("Function1")]
    public static void Run([TimerTrigger("0 */5 * * * *")]TimerInfo myTimer, TraceWriter log)
    {
        log.Info($"C# Timer trigger function executed at: {DateTime.Now}");



    }
Run Code Online (Sandbox Code Playgroud)

只是有些人朝着正确的方向指点,我会不断努力奋斗...

Mik*_*kov 5

因此,您需要一个具有

这是我为您提供的功能的草图:

[FunctionName("Function1")]
public static void Run(
    [TimerTrigger("0 */5 * * * *")] TimerInfo myTimer, 
    [Blob("mycontainer/myblob.txt", FileAccess.Write)] out string outputBlob,
    TraceWriter log)
{
    var str = ConfigurationManager.ConnectionStrings["sqldb_connection"].ConnectionString;
    using (var conn = new SqlConnection(str))
    {
        conn.Open();
        var text = "SELECT count(*) FROM MyData";

        using (var cmd = new SqlCommand(text, conn))
        {
            // Execute the command and log the # rows affected.
            var rows = cmd.ExecuteScalar();
            outputBlob = $"{rows} rows found";
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

您的问题有点开放性,请随时使用有关您挣扎的更多详细信息进行更新。