C # Ошибка компиляции: «X недоступна из-за его уровня защиты»
-
02-10-2019 - |
Вопрос
Когда C # дает эту ошибку компиляции?
«Фаворит. Фавориты. Финал. FavoriteCollection» недоступна из-за его уровня защиты
private void Form1_Load(object sender, EventArgs e)
{
Favorites objFavorites = new Favorites();
objFavorites.ScanFavorites();
foreach (WebFavorite objWebFavorite in objFavorites.FavoriteCollection)
{
ListViewItem objListViewItem = new ListViewItem();
objListViewItem.Text = objWebFavorite.Name;
objListViewItem.SubItems.Add(objWebFavorite.Url);
lstFavorites.Items.Add(objListViewItem);
}
}
Решение
Эта ошибка времени компиляции означает, что имущество, которое вы пытаетесь получить доступ, не public
и единственный способ получить доступ к этому либо изменению его Модификатор доступа или использование отражение.
Другие советы
Когда он не виден достаточно виден, чтобы достичь: если, например, класс находится в другом проекте, и видимость interal
или ниже (protected
или private
), вы не сможете его использовать. Вам придется изменить его на публику в таком случае:
public class FavoriteCollection
{
...
}
Не связан с StackOverflow