C# 不一致的可访问性错误,从2个窗体访问一个类实例
我有两个表单和类模型,我需要从两个表单访问相同的模型 但我犯了个错误C# 不一致的可访问性错误,从2个窗体访问一个类实例,c#,C#,我有两个表单和类模型,我需要从两个表单访问相同的模型 但我犯了个错误 Error CS0051 Inconsistent accessibility: parameter type 'Model' is less accessible than method 'MessageForm.MessageForm(Model)' 消息格式 public partial class MessageForm : Form { Model model; public Message
Error CS0051 Inconsistent accessibility: parameter type 'Model' is less accessible than method 'MessageForm.MessageForm(Model)'
消息格式
public partial class MessageForm : Form
{
Model model;
public MessageForm(Model model)
{
InitializeComponent();
this.model = model;
}
}
表格1
我在我的另一个项目中也做了同样的工作,效果很好,我不知道哪里是错误的访问。由于您的
MessageForm
类是public
,因此暴露在外部的每种类型也必须是public
在这种情况下,您的模型
构造函数参数就是问题所在,因为模型
不是公共
。没有访问Model
类的外部类不能访问或实例化MessageForm
类,因为它不能知道所有类型
Form1
中的模型
未暴露于外部。因此,,使用它没有问题。是否有其他方法从两个表单访问类模型?当我这样做时,我在form1中遇到另一个可访问性错误不一致的可访问性:字段类型“model”比字段“form1.model”更难访问不一致的可访问性:参数类型“model”比方法“MessageForm.MessageForm(Model)”更改模型,而不是字段。
public partial class Form1 : Form
{
MessageForm messageForm;
Model model;
public Form1()
{
InitializeComponent();
model = new Model();
messageForm = new MessageForm(model);
messageForm.Show();
}
}