博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在.net中使用aquiles访问Cassandra(四)
阅读量:4312 次
发布时间:2019-06-06

本文共 2393 字,大约阅读时间需要 7 分钟。

数据的持久化我们都已经完成了,和所有应有程序一样,最重要的是要向用户展示数据。下面我们就推出这部分代码,读取任意行任何列:

public IList
ExecuteRowListResult(string columnFamily, IList
rowKeys, IList
columnNames) { if (string.IsNullOrWhiteSpace(columnFamily)) throw new ArgumentNullException("columnFamily"); List
keys = rowKeys.Select(rowKey => ByteEncoderHelper.UTF8Encoder.ToByteArray(rowKey)).ToList(); ColumnParent columnPath = new ColumnParent() { Column_family = columnFamily, }; SlicePredicate sp = null; if (columnNames == null || columnNames.Count == 0) { sp = new SlicePredicate() { Slice_range = new SliceRange { Count = int.MaxValue, Reversed = false, Start = new byte[0], Finish = new byte[0] }, }; } else { sp = new SlicePredicate() { Column_names = columnNames.Select(c => ByteEncoderHelper.UTF8Encoder.ToByteArray(c)).ToList() }; } Dictionary
> queryResult = _cluster.Execute(new ExecutionBlock(delegate(Apache.Cassandra.Cassandra.Client client) { return client.multiget_slice(keys, columnPath, sp, _consistencyLevel); }), _keyspaceName) as Dictionary
>; if (queryResult != null && queryResult.Count > 0) { IList
rows = new List
(); foreach (var dic in queryResult) { if (dic.Value.Count == 0) continue; TRowResult trow = new TRowResult(); trow.Row = ByteEncoderHelper.UTF8Encoder.FromByteArray(dic.Key); trow.Columns = new Dictionary
(); foreach (ColumnOrSuperColumn column in dic.Value) { string name = ByteEncoderHelper.UTF8Encoder.FromByteArray(column.Column.Name); string value = ByteEncoderHelper.UTF8Encoder.FromByteArray(column.Column.Value); trow.Columns.Add(name, new TCell() { ColumnName = name, Value = value, Timestamp = column.Column.Timestamp }); } rows.Add(trow); } return rows; } return null; }

 

posted on
2013-07-30 22:05 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/zeeman/p/3226633.html

你可能感兴趣的文章
C#调用C++编译的DLL详解
查看>>
Kali Linux的安装
查看>>
我的大学生活-5-08-赵心宁
查看>>
SQLServer视图
查看>>
入门阶段
查看>>
Android中使用http协议访问网络
查看>>
vs win32 & MFC 指针默认位置
查看>>
Join 与 CountDownLatch 之间的区别
查看>>
js存cookie
查看>>
vc6下dll调试
查看>>
Ubuntu apt常用命令
查看>>
struts2 配置(部分)
查看>>
python代码迷之错误(ModuleNotFoundError: No module named 'caffe.proto')
查看>>
nodejs adm-zip 解压文件 中文文件名乱码 问题解决
查看>>
MapReduce-文本输入
查看>>
<Bootstrap> 学习笔记六. 栅格系统使用案例
查看>>
可能的出栈序列问题
查看>>
vector--C++ STL 学习
查看>>
蜕变成蝶~Linux设备驱动之异步通知和异步I/O
查看>>
jquery简单开始
查看>>