Создан пакет NuGet. Это в основном форма, которая делает некоторую работу. Я добавил общедоступное свойство только для чтения в форме логики. Когда я упаковываю пакет NuGet, устанавливаю его в приложение и создаю экземпляр класса формы, свойство puplic не отображается.
public partial class CameraDiscoveryForm : Form
{
private Discovery _discovery = new Discovery();
List<CameraData> _cameraLists = new List<CameraData>();
public CameraDiscoveryForm()
{
InitializeComponent();
}
//Other form stuff that seem unrelated
public CameraDeviceInfo CameraDeviceInfo { get; private set; } = null;
}
В другом проекте я устанавливаю свой пакет NuGet и создаю экземпляр, и они пытаются использовать это свойство. Visual Studio не распознает CameraDeviceInfo в строке var cam = cameraDiscoveryForm.CameraDeviceInfo;:
cameraDiscoveryForm.ShowDialog();
var cam = cameraDiscoveryForm.CameraDeviceInfo;
Я получаю ошибку:
CS1061 «CameraDiscoveryForm» не содержит определения «CameraDeviceInfo», и невозможно найти доступный метод расширения «CameraDeviceInfo», принимающий первый аргумент типа «CameraDiscoveryForm» (вы пропустили директиву using или ссылку на сборку?)
Добавление еще большей информации - когда я использую отладчик, я действительно вижу свойство, которое мне нужно: