gpt4 book ai didi

c# - 没有在服务中实现接口(interface)成员

转载 作者:行者123 更新时间:2023-11-30 19:26:27 25 4
gpt4 key购买 nike

首先,如果对这个问题的引用不正确,我深表歉意。

我正在开发三层 MVC 3应用。在业务层中,我需要创建一个调用数据访问层的服务,以便检索现有城镇的列表。

我的 ITown界面如下;

[ServiceContract]
public interface ITown
{
[OperationContract]
IEnumerable<Town> GetAllTowns();
}

Town.svc.cs , 我正在插入如下;

public class Town : ITown
{
public IEnumerable<Common.Town> GetAllTowns()
{
return new DATown().GetAllTowns();
}
}

问题出在上面的代码中。我在 Town 下收到错误在类声明中 public class Town : ITown .

'Business.Town' does not implement interface member 'Business.ITown.GetAllTowns()'. 
'Business.Town.GetAllTowns()' cannot implement 'Business.ITown.GetAllTowns()'
because it does not have the matching return type of 'System.Collections.Generic.IEnumerable<Business.Town>'.

这是我DATown里面的内容;

public class DATown : Connection
{
//Constructor
public DATown()
:base()
{ }

public IEnumerable<Town> GetAllTowns()
{
return entities.Town.AsEnumerable();
}
}

基本上我所做的就是调用 GetAllTowns() DATown的方法|来自 Town.svc.cs类。

我搜索过其他类似的查询;主要是说其中一种方法中有一个正确的参数。我不认为我的代码是这种情况。

如果有人能帮我找出问题所在,我将不胜感激。

提前致谢。

最佳答案

在您的 Town 类中,您有一个 IEnumerable<Common.Town>在界面中,您只需要 IEnumerable<Town> ,但在您的错误中,它显示接口(interface)正在使用 Business.Town而不是 Common.Town .问题是它们彼此不同。

如果你改变你的接口(interface),那么 IEnumerable 也是 Common.Town 你应该没问题。

关于c# - 没有在服务中实现接口(interface)成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22763215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com