[英]Extension method must be defined in a non-generic static class Error public static
我的项目有问题。
我有这个代码:
public static TitleInfoPacket GenerateTitInfo(this ICharacterDAO visualEntity)
{
var visibleTitle = visualEntity.Titles.FirstOrDefault(s => s.Visible)?.TitleType;
var effectiveTitle = visualEntity.Titles.FirstOrDefault(s => s.Active)?.TitleType;
return new TitleInfoPacket
{
VisualId = visualEntity.VisualId,
EffectiveTitle = effectiveTitle ?? 0,
VisualType = visualEntity.VisualType,
VisibleTitle = visibleTitle ?? 0,
};
}
public TitlePacket GenerateTitle(this ICharacterDAO visualEntity)
{
var data = visualEntity.Titles.Select(s => new TitleSubPacket
{
TitleId = (short)(s.TitleType - 9300),
TitleStatus = (byte)((s.Visible ? 2 : 0) + (s.Active ? 4 : 0) + 1)
}).ToList();
return new TitlePacket
{
Data = data.Any() ? data : null
};
}
我收到一个错误:
扩展方法必须在非泛型静态类中定义
我尝试了一切但仍然有这个问题有人可以解释我做的不好或向我展示我想念的东西谢谢你们的任何回复
观察我放置了 static 关键字
public static class MyExtensionsClass {
// extension methods here
public static TitleInfoPacket GenerateTitInfo(this ICharacterDAO
visualEntity)
{
var visibleTitle = visualEntity.Titles.FirstOrDefault(s => s.Visible)?.TitleType;
var effectiveTitle = visualEntity.Titles.FirstOrDefault(s => s.Active)?.TitleType;
return new TitleInfoPacket
{
VisualId = visualEntity.VisualId,
EffectiveTitle = effectiveTitle ?? 0,
VisualType = visualEntity.VisualType,
VisibleTitle = visibleTitle ?? 0,
};
}
}
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.