如何从Xamarin编写firebase ServerValue.Timestamp

时间:2017-09-14 11:57:14

标签: android firebase xamarin firebase-realtime-database xamarin.android

关于Xamarin.Android(原生)

如何在创建或更新密钥时在firebase上写入服务器的时间戳。

我在android上找到了代码如下

ref.addValueEventListener(new ValueEventListener() {
public void onDataChange(DataSnapshot dataSnapshot) {
    System.out.println(dataSnapshot.getValue()); 
}

public void onCancelled(DatabaseError databaseError) { }});
ref.setValue(ServerValue.TIMESTAMP);

,但在xamarin.android(原生)

上找不到
FirebaseDatabase database = FirebaseDatabase.GetInstance(FirebaseApp.GetInstance(Application.PackageName));

DatabaseReference userRef = database.GetReference("users").Child(userKey);
userRef.SetValue(ServerValue.Timestamp); // build error

1 个答案:

答案 0 :(得分:1)

ServerValue.Timestamp映射到C#中的IDictionary(在Java中它是Map)。

将其投放到Java.Lang.Object中的SetValue

userRef.SetValue((Java.Lang.Object)ServerValue.Timestamp); 

Firebase.Database.IValueEventListener.OnDataChange中将值转换为long:

var timestamp = (long)snapshot.Value;