首页 / C# / c# – Azure功能到表存储
c# – Azure功能到表存储
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – Azure功能到表存储,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1839字,纯文字阅读大概需要3分钟。
内容图文
![c# – Azure功能到表存储](/upload/InfoBanner/zyjiaocheng/797/e48f802feb8f45e3856a5c7b7b30cec1.jpg)
我有一个Azure功能,我希望它从EventHub获取消息(这是相当简单和有效),然后在运行时使用表绑定将该信息放入表存储.
这是我到目前为止所拥有的:
public static async Task Run(string eventHubMessage, TraceWriter log, Binder binder)
{
var m = JsonConvert.DeserializeObject<Measurement>(eventHubMessage);
var attributes = new Attribute[]
{
new StorageAccountAttribute("AzureWebJobsTest"),
new TableAttribute(tableName, m.PartitionKey, m.RowKey)
};
using(var output = await binder.BindAsync<MyTableEntity>(attributes))
{
if(output == null)
log.Info($"4. output is null");
else
{
output.Minimum = m.Minimum;
output.Maximum = m.Maximum;
output.Average = m.Average;
output.Timestamp = m.Timestamp;
output.ETag = m.ETag;
output.WriteEntity(/* Need an operationContext*/)
}
}
}
public class MyTableEntity : TableEntity, IDisposable
{
public double Average { get; set;}
public double Minimum { get; set;}
public double Maximum { get; set;}
bool disposed = false;
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
protected virtual void Dispose(bool disposing)
{
if (disposed)
return;
if (disposing)
{
}
disposed = true;
}
}
我的问题;
1)输出始终为空.
2)即使输出不为null,我也不知道我对OperationContext需要什么,或者调用ITableEntity.Write()甚至是正确的方法来使它写入表存储.
ETA Json绑定:
{
"bindings": [
{
"type": "eventHubTrigger",
"name": "eventHubMessage",
"direction": "in",
"path": "measurements",
"connection": "MeasurementsConnectionString"
}
],
"disabled": false
}
解决方法:
要向Table添加新条目,您应该绑定到IAsyncCollector而不是实体本身,然后创建一个新实体并调用AddAsync.以下代码段对我有用:
var attributes = new Attribute[]
{
new StorageAccountAttribute("..."),
new TableAttribute("...")
};
var output = await binder.BindAsync<IAsyncCollector<MyTableEntity>>(attributes);
await output.AddAsync(new MyTableEntity()
{
PartitionKey = "...",
RowKey = "...",
Minimum = ...,
...
});
内容总结
以上是互联网集市为您收集整理的c# – Azure功能到表存储全部内容,希望文章能够帮你解决c# – Azure功能到表存储所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。