2016-05-16 56 views
1

如何從IDialogContext context獲取ConversationId?我知道有一個ConverationData屬性,但似乎只是一個可以容納任何東西的數據包。從上下文中獲取ConversationId

這個包裏的id是什麼?如果是這樣,檢索它的關鍵是什麼?

public async Task General(IDialogContext context, LuisResult result) 
{ 
    //how can I access the conversationId here 
} 

回答

1

所以我找到了一種方法,但我不確定它是否是最好的方法。

被傳入的context對象上有一個data字段,它包含原始message對象又包含了ConversationId。不幸的是這是私人的。

context確實有一個CreateMessage方法返回一個Message對象,其中包含ConversationId它是可訪問的。

var id = context.MakeMessage().ConversationId; 

就像我說的,我不確定這是否是最好的方法,但它是我能夠實現這一目標的唯一方法。如果有人有更好的方法,我會留下來。