Mam taki sobie oto interfejs
namespace WebApplication2.Config.Access
{
interface IAccessConfig
{
Boolean isAccessToIndex();
Boolean isAccessToCreateStore();
Boolean isAccessToMenagmentProduct();
Boolean isAccessToNav();
}
}
n Obiekt który z niego korzysta
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace WebApplication2.Config.Access
{
public class NotAuthorizedUserConfig : IAccessConfig
{
private const Boolean ACCESS_INDEX = true;
private const Boolean ACCESS_CREATE_STORE = false;
private const Boolean ACCESS_MENAGMENT_PRODUCT = false;
private const Boolean ACCESS_NAVBAR = false;
public bool isAccessToCreateStore()
{
return ACCESS_CREATE_STORE;
}
public bool isAccessToIndex()
{
return ACCESS_INDEX;
}
public bool isAccessToMenagmentProduct()
{
return ACCESS_MENAGMENT_PRODUCT;
}
public bool isAccessToNav()
{
return ACCESS_NAVBAR;
}
}
}
Które są potem mapowane za pomocą:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace WebApplication2.Dictonary
{
public enum AccessLevelTypesEnum
{
AUTHORIZED,
NOT_AUTHORIZED
}
Który jest mapowany w:
namespace WebApplication2.Mapper
{
public static class AccessMapper
{
private static Dictionary <string, IAccessConfig> map = new Dictionary<string, IAccessConfig>();
public static void createMap()
{
map.Add(AccessLevelTypesEnum.NOT_AUTHORIZED.ToString(), new AuthorizedUserConfig());
map.Add(AccessLevelTypesEnum.AUTHORIZED.ToString(), new NotAuthorizedUserConfig());
}
public static IAccessConfig getMap(string levelAccess)
{
IAccessConfig config = map[levelAccess];
return config;
}
}
}
I problem występuje tu:
public static IAccessConfig getMap(string levelAccess)
{
IAccessConfig config = map[levelAccess];
return config;
}
w słowie getMap
Tekst jest jego następująca:
"Niespójność dostępności: typ zwracany "IAccessConfig" jest mniej dostępny niż AccessMapper.getMap(string)"
Co ten błąd oznacza, jak go naprawić?