我很难让SignalR将返回的ArrayList映射到我的数据模型。
我在映射单个数据模型时没有问题,但没有映射列表。
我正在尝试这样的事情
hub.on( "OnGetUserList", new SubscriptionHandler3<Integer, Integer, List<UserListDataModel>>() {
@Override
public void run(Integer arg1, Integer arg2, List<UserListDataModel> msgs) {
}
}, Integer.class, Integer.class, List<UserListDataModel.class>); // Compile error
我按照其他线程的建议尝试了这个,但方法永远不会被调用
hub.on( "OnGetUserList", new SubscriptionHandler3<Integer, Integer, UserListDataModel[]>() {
@Override
public void run(Integer arg1, Integer arg2, final UserListDataModel[] msgs) {
// never gets called
}
}, Integer.class, Integer.class, UserListDataModel[].class);
答案 0 :(得分:0)
尝试将对象数据转换为特定列表或对象
mInstance.mHubProxy.on(SignalRConstant.CLIENT_METHOD_BROADAST_MESSAGE,
new SubscriptionHandler2<String, Object>() {
@Override
public void run(final String msg, final Object data) {
if (msg != null && data != null && !data.equals("")) {
Intent intent = new Intent();
intent.setAction(MY_ACTION);
intent.putExtra("CAPTION", msg);
if(msg.equals(SignalRConstant.CAPTION_LOGINPASS))
{
Gson gson = new GsonBuilder().setDateFormat(AppConstant.DATE_FORMAT).create();
intent.putExtra("DATA", gson.toJson(data));
}else{
intent.putExtra("DATA", data.toString());
}
sendBroadcast(intent);
}
}
}
, String.class, Object.class);