簡體   English   中英

為什么我收到錯誤錯誤 1 ​​不一致的可訪問性:返回類型?

[英]Why am I getting the error Error 1 Inconsistent accessibility: return type?

這個項目應該有一個聯系人類和地址類,我正在從數據文件中提取信息

namespace Week1.DataAccess
{
    public class AddressBookRepo
    {
        private string ConnectionString
        {
            get
            {
                return ConfigurationManager
                    .ConnectionStrings["AddressbookConnectionString"]
                    .ConnectionString;
            }
        }

        public List<Contact> GetAllContacts()
        {
            var contactList = new List<Contact>();
            using (var conn = new SqlConnection(ConnectionString))
            {
                using (var command = new SqlCommand())
                {
                    command.Connection = conn;
                    command.CommandText = "SELECT * FROM CONTACT";
                    conn.Open();
                    using (var reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            var contact = GetContactFromDataReader(reader);
                            contactList.Add(contact);
                        }
                    }
                }

            }

            return contactList;
        }

        public Contact GetContactById(int id)
        {
            Contact contact = null;

            using (var conn = new SqlConnection(ConnectionString))
            {
                using (var command = new SqlCommand())
                {
                    command.Connection = conn;
                    conn.Open();
                    command.CommandText = 
                                @"SELECT * 
                                FROM CONTACT 
                                WHERE ContactID = @ContactId";
                    command.Parameters.AddWithValue("ContactID", id);

                    using (var reader = command.ExecuteReader())
                    {
                        reader.Read();
                        contact = GetContactFromDataReader(reader);
                    }
                }
            }
            return contact;
        }

        // 2.) create a GetAllAddresses method
        public List<Address> GetAllAddresses() //i am getting error here
        {
            var addressList = new List<Address>();
            using (var conn = new SqlConnection(ConnectionString))
            {
                using (var command = new SqlCommand())
                {
                    command.Connection = conn;
                    command.CommandText = "SELECT * FROM ADDRESS";
                    conn.Open();
                    using (var reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            var address = GetAddressFromDataReader(reader);
                            addressList.Add(address);
                        }
                    }
                }

            }

            return addressList;
        }

        // 3.) create a GetAddressById method
        public Address GetAddressById(int id)// I am getting error here
        {
            Address address = null;

            using (var conn = new SqlConnection(ConnectionString))
            {
                using (var command = new SqlCommand())
                {
                    command.Connection = conn;
                    conn.Open();
                    command.CommandText =
                                @"SELECT * 
                                FROM ADDRESS 
                                WHERE ADDRESSID = @AddressId";
                    command.Parameters.AddWithValue("addressID", id);

                    using (var reader = command.ExecuteReader())
                    {
                        reader.Read();
                        address = GetAddressFromDataReader(reader);
                    }
                }
            }
            return address;
        }


        // 4.) create a method to GetAddressesByState (extra credit)

        private static Contact GetContactFromDataReader(SqlDataReader reader)
        {
            var contact = new Contact
            {
                ContactId = Convert.ToInt32(reader["ContactID"]),
                FirstName = Convert.ToString(reader["FirstName"]).Trim(),
                LastName = Convert.ToString(reader["LastName"]).Trim(),
                Title = reader["Title"].ToString().Trim(),
                AddDate = (DateTime)reader["AddDate"],
                ModifiedDate = (DateTime)reader["ModifiedDate"]
            };
            return contact;
        }

        private static Address GetAddressFromDataReader(SqlDataReader reader)
        {
            var address = new Address
            {
                AddressId = Convert.ToInt32(reader["addressID"]),
                Street1 = Convert.ToString(reader["Street1"]),
                Street2 = Convert.ToString(reader["Street2"]),
                City = Convert.ToString(reader["City"]),
                StateProvince = Convert.ToString(reader["StateProvince"]),
                CountryRegion = Convert.ToString(reader["CountryRegion"]),
                PostalCode = Convert.ToString(reader["PostalCode"]),
                AddressType = Convert.ToString(reader["AddressType"]),
                ContactId = Convert.ToInt32(reader["ContactID"]),
                ModifiedDate = (DateTime)reader["ModifiedDate"]
            };
            return address;
        }
    }
}

您的課程(可能是地址廣告/或聯系人)可能不是公開的,無法與它們所使用的方法的可訪問性相匹配

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM