簡體   English   中英

如何創建包含簡單類型的 Adhoc object

[英]How to create Adhoc object containing simple types

要將值傳遞給某些方法,您需要擁有包含簡單類型字段的 object。

https://docs.microsoft.com/en-us/dotnet/api/microsoft.bot.builder.languagegeneration.templates.evaluate?view=botbuilder-dotnet-stable

有沒有辦法生成臨時 object 並為其分配簡單類型(比如說字符串),而不定義新的 class?

我有:

string myString;

我想在下面沒有為 myAdhocObject 創建 class

var myAdHocObject;
myAdHocObject.myString = myString;

這樣我就可以毫不費力地將它從鏈接傳遞給方法。 那可能嗎?

一般來說,是的。

  • C# 7 支持值元組( System.ValueTuple )。
  • C# 3 支持匿名類型,但考慮到這些導致 GC 堆分配,我不建議使用它們。 您也不能在方法簽名中使用它們。
  • 您還可以手動實例化System.Tuple<T...>
  • 如果你想放棄類型安全,你可以使用dynamic但不推薦這樣做

但是,在您的問題的上下文中(w.r.t. Microsoft.Bot.Builder.LanguageGeneration.EvaluationOptions ),因為 .NET 使用主格類型(而不是結構類型),您不能傳遞值元組、匿名類型或System.Tuple需要特定類型對象的方法的System.Tuple - 您仍然必須自己實例化正確類型的 object。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM