0

このhttp://www.dotnetcurry.com/ShowArticle.aspx?ID=585に従って プロジェクトを実行しましたが、エラーがあいまいで、部分的な修飾子がありません。

Iservice1.csの私のコード

namespace WCT_DataServiceApp
{
    [ServiceContract]
    public interface IService1
    {
        [OperationContract]
        ImageEmployee GetEmpByEmpNo(int EmpNo);
    }

    [DataContract]
    public class ImageEmployee
    {
        [DataMember]
        public int EmpNo { get; set; }
        [DataMember]
        public byte[] EmpImage { get; set; }
    }
}

およびService1.svc.csのコード

namespace WCT_DataServiceApp
{
    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "Service1" in code, svc and config file together.
    public class Service1 : IService1
    {
        public ImageEmployee GetEmpByEmpNo(int EmpNo)
        {
            var Conn = new SqlConnection(@"Data Source=yeo-pc\sqlexpress;Initial Catalog=image;Integrated Security=True");
            Conn.Open();
            var Cmd = new SqlCommand();
            Cmd.Connection = Conn;
            Cmd.CommandText = "Select * from ImageEmployee where EmpNo=@EmpNo";
            Cmd.Parameters.AddWithValue("@EmpNo", EmpNo);

            var Reader = Cmd.ExecuteReader();

            ImageEmployee objImgEmp = new ImageEmployee();

            while (Reader.Read())
            {
                objImgEmp.EmpNo = Convert.ToInt32(Reader["EmpNo"]);
                objImgEmp.EmpImage = (byte[])Reader["EmpImage"];
            }
            Reader.Close();
            Conn.Close();
            return objImgEmp;
        }
    }
}
4

1 に答える 1

0

Service1ソリューションにすでにクラスがあるようです。新しいWCFプロジェクトで試してみると、デフォルトで2つのファイルが取得されます。1つはインターフェイス用、もう1つはクラス用で、名前は:IService1.csService1.csです。これら2つを削除するか、コードを自分のものに置き換える必要があります。Service1エラーは、部分クラスという単語を使用するように求めています。これは、新しいコードファイルで部分クラスを定義していることを前提としているため、部分クラスに使用されます。

于 2012-06-12T10:11:39.467 に答える