gpt4 book ai didi

c# - 为什么匿名类型在 C# 中具有内部可见性?

转载 作者:行者123 更新时间:2023-11-30 22:30:12 25 4
gpt4 key购买 nike

这是因为如果公开匿名类型可能会发生安全问题吗?我只是不明白。

这就是我希望语言支持的那种代码

程序集 1

public class Renderer
{
public void RenderHtmlInput(dynamic inputModel)
{
var html = string.format("<input type='text' width='{0}' height='{1}'>", inputModel.width, inputModel.height);
...
}
}

程序集 2

public class Consumer
{
public void Run()
{
var renderer = new Renderer();

renderer.RenderInput(new { width = "12px", height = "20px" });
}
}

最佳答案

因为您应该在同一个库中使用它们。在接口(interface)或类边界上公开匿名类型是不行的。

如果您想这样做,请使用动态类型。

编辑:匿名类型的名称也会自动生成,因此将它们从一个库中公开意味着它们可能会与另一个库中的匿名类型发生冲突。

关于c# - 为什么匿名类型在 C# 中具有内部可见性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9802877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com