'没有匹配的返回类型';使用具有两个变量存储过程的数据实体创建wcf服务

问题描述 投票:0回答:1

这是我第一次尝试使用数据实体创建WCF服务。

我有一个简单的存储过程来查找具有指定返回数的地址。

存储过程(prcGetCOBAddress):

SELECT TOP (@NumberOfRecord)
    *
FROM
    COB_ADDRESS
WHERE
    ADD_FULL LIKE '%' + @FullAddress + '%'

IService1.cs

public interface IService1
{
    [OperationContract]
    COB_ADDRESS FindAddress(int NumReturn, string FullAdd);
}

Service1.svc.cs

public class Service1 : IService1
{
    public COB_ADDRESS[] FindAddress(int NumReturn, string FullAdd)
    {
        try
        {
            using (TestingEntities de = new TestingEntities())
            {
                return de.prcGetCOBAddress(NumReturn, FullAdd)
                         .Select(p => new COB_ADDRESS
                         {
                             UID_NUM = p.UID_NUM,
                             ADD_FULL = p.ADD_FULL
                         }).ToArray();
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
            return null;
        }
    }        
}

我得到了IService1下面的松鼠下划线和错误消息说Service1没有实现接口成员IService1.FindAddress(int, string)Service1.FindAddress(int, string)}无法实现IService1.FindAddress(int, string),因为它没有匹配的返回类型COB_ADDRESS

任何人都可以帮我解决我错过的问题吗?

c# entity-framework wcf stored-procedures visual-studio-2015
1个回答
0
投票

正如@PaulAbbott所说,接口及其实现不匹配。你的界面是:

public interface IService1
{
    [OperationContract]
    COB_ADDRESS FindAddress(int NumReturn, string FullAdd);
}

它应该是:

public interface IService1
{
    [OperationContract]
    COB_ADDRESS[] FindAddress(int NumReturn, string FullAdd);
}
© www.soinside.com 2019 - 2024. All rights reserved.