.net 获取错误CS0272无法在此上下文中使用属性或索引器,因为set访问器不可访问

piztneat  于 2022-11-26  发布在  .NET
关注(0)|答案(1)|浏览(221)

对程序集类进行签名并使用InternalsVisibleTo(“FriendAssembly,PublicKey=“)特性将内部内容公开给友元程序集后,我收到”Set访问器无法访问“错误。该属性为:

public datatype PropertyName { get; internal set; }

我不想更改Set访问器的访问修饰符。

bvuwiixz

bvuwiixz1#

[assembly:InternalsVisibleTo...)]属性(Attribute)必须位于包含您要公开之内部属性(Property)的组件中。
如果您的组件是强式名称签署,则friend组件也必须是强式名称签署,而且您必须用途:
[assembly:InternalsVisibleTo("FriendAssembly, PublicKey=...)]
其中PublicKey部分是友元程序集的强名称密钥文件中的完整公钥。
如果您的组件签署,请用途:
[assembly:InternalsVisibleTo("FriendAssembly")]

相关问题