e801478fad
* QueryTest.cs: * RelationTest.cs: * SubClassTest.cs: * LCIMConversationQuery.cs: * LCCompositionalCondition.cs: * LCQuery.cs: chore: 支持更丰富的查询 |
||
---|---|---|
Common | ||
Realtime | ||
Sample/RealtimeApp | ||
Storage | ||
UnityLibs | ||
assets | ||
script | ||
.gitignore | ||
.travis.yml | ||
Doxyfile | ||
LICENSE | ||
README.md | ||
csharp-sdk.sln |
README.md
csharp-sdk
LeanCloud 数据存储,即时通讯 C# SDK,基于 .Net Standard 2.0 标准开发。
安装
从 Release 下载指定版本 SDK,暂不支持 Nuget 方式。
导入
using LeanCloud;
// 数据存储
using LeanCloud.Storage;
// 即时通讯
using LeanCloud.Realtime;
初始化
LCApplication.Initialize("ikGGdRE2YcVOemAaRbgp1xGJ-gzGzoHsz", "NUKmuRbdAhg1vrb2wexYo1jo", "https://ikggdre2.lc-cn-n1-shared.com");
调试
开启调试日志
LCLogger.LogDelegate += (level, info) => {
switch (level) {
case LCLogLevel.Debug:
WriteLine($"[DEBUG] {DateTime.Now} {info}\n");
break;
case LCLogLevel.Warn:
WriteLine($"[WARNING] {DateTime.Now} {info}\n");
break;
case LCLogLevel.Error:
WriteLine($"[ERROR] {DateTime.Now} {info}\n");
break;
default:
WriteLine(info);
break;
}
}
数据存储
对象
LCObject obj = new LCObject("Hello");
obj["intValue"] = 123;
await obj.Save();
更多关于对象用法:参考
查询
LCQuery<LCObject> query = new LCQuery<LCObject>("Hello");
query.Limit(2);
List<LCObject> list = await query.Find();
更多关于查询用法:参考
文件
LCFile file = new LCFile("avatar", AvatarFilePath);
await file.Save((count, total) => {
TestContext.WriteLine($"progress: {count}/{total}");
});
更多关于文件用法:参考
用户
await LCUser.Login("hello", "world");
更多关于用户用法:参考
GeoPoint
LCGeoPoint p1 = new LCGeoPoint(20.0059, 110.3665);
更多关于 GeoPoint 用法:参考
即时通讯
用户
LCIMClient client = new LCIMClient("c1");
// 登录
await client.Open();
// 注销
await client.Close();
更多关于用户用法:参考
对话
// 创建普通对话
LCIMConversation conversation = await client.CreateConversation(new string[] { "world" }, name: name, unique: false);
// 创建聊天室
LCIMConversation chatroom = await client.CreateChatRoom(name);
// 创建临时对话
LCIMConversation tempConversation = await client.CreateTemporaryConversation(new string[] { "world" });
更多关于对话用法:参考
消息
// 发送消息
LCIMTextMessage textMessage = new LCIMTextMessage("hello, world");
await conversation.Send(textMessage);
// 接收消息
m2.OnMessage = (conv, msg) => {
if (msg is LCIMTextMessage textMsg) {
WriteLine($"text: {textMsg.Text}");
}
};
更多关于对话用法:参考