【发布时间】:2017-01-13 16:00:23
【问题描述】:
我正在尝试将对象存储在 Bot 的 UserData 中。
首先我有以下课程:
public class PersonalData
{
public string Name { get; set; }
public int Age { get; set; }
}
在我的 Luis 类中,我需要一个 PersonalData 类型的变量。
public class Luis : LuisDialog<object>
{
PersonalData personalData;
这已经导致调试器永远不会进入我的任何意图的问题。这有什么问题?
现在,如果我以这样的意图创建 PersonalData 对象:
PersonalData personalData = new PersonalData();
它将被成功创建。 但是当我想给我的对象赋值时
if (!context.UserData.TryGetValue(ContextConstants.personalData, out personalData))
{
personalData.Name = userName;
context.UserData.SetValue(ContextConstants.personalData, personalData.Name);
}
只要程序尝试将personalData.Name 设置为userName,我就会得到一个NullReferenceException 并且我的PersonalData 对象为空。
我已经仔细检查了 userName 不为空。
我错过了什么?
提前致谢!
【问题讨论】:
标签: c# bots botframework azure-language-understanding