2

我有一个界面

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Guestbook.Models;

namespace Guestbook.Controllers
{
    public interface IGuestbookRepository
    {
        IList<GuestbookEntry> GetMostRecentEntries();
        GuestbookEntry FindById(int id);
        IList<CommentSummary> GetCommentSummary();
        Void AddEntry(GuestbookEntry entry);
    }
}

实现类看起来像这样

using System;
using System.Collections.Generic;
using System.Linq;
using Guestbook.Models;

namespace Guestbook.Controllers
{
public class GuestbookRepository : IGuestbookRepository
{
    private readonly GuestbookContext _db = new GuestbookContext();

     public void AddEntry(GuestbookEntry entry)
     {
        entry.DateAdded = DateTime.Now;

        _db.Entries.Add(entry);
        _db.SaveChanges();
     }
}

当我键入编译它时,我收到错误消息说 System.void 不能从 c# 中使用——使用 typeof(void) 来获取 void 类型对象。

我到底在做什么错?有人可以帮助我吗?

4

2 回答 2

6

这是接口声明中的问题:

Void AddEntry(GuestbookEntry entry);

它应该是:

void AddEntry(GuestbookEntry entry);

第一个版本是指System.Void不能在 C# 中使用的类型(根据错误消息)。第二种是C#方式编写一个没有返回值的方法。

于 2013-05-03T09:39:30.790 回答
3

中的情况不正确Void AddEntry(GuestbookEntry entry);void应该是小写。

于 2013-05-03T09:40:17.867 回答