C# Wcf Rest服务返回编号转换错误

C# Wcf Rest服务返回编号转换错误,c#,angularjs,rest,wcf,C#,Angularjs,Rest,Wcf,我正在将Wcf Rest服务消费到Angular JS应用程序中。我试图根据输入字段中的帐号显示单个记录。但当我点击提交按钮显示记录时,我在谷歌浏览器网络点击中发现了以下错误 服务器在处理请求时遇到错误。异常消息是“将nvarchar值“{Account_Number}15”转换为数据类型int”时转换失败。”。有关详细信息,请参阅服务器日志。异常堆栈跟踪为: 并在Post方法操作中返回400个错误请求 这里是界面 [OperationContract] [WebInvoke(M

我正在将Wcf Rest服务消费到Angular JS应用程序中。我试图根据输入字段中的帐号显示单个记录。但当我点击提交按钮显示记录时,我在谷歌浏览器网络点击中发现了以下错误

服务器在处理请求时遇到错误。异常消息是“将nvarchar值“{Account_Number}15”转换为数据类型int”时转换失败。”。有关详细信息,请参阅服务器日志。异常堆栈跟踪为:

并在Post方法操作中返回400个错误请求

这里是界面

 [OperationContract]
       [WebInvoke(Method = "POST",
       RequestFormat = WebMessageFormat.Json,
       ResponseFormat = WebMessageFormat.Json,
       UriTemplate = "/GetAccountDetails/{Account_Number}")]
        string  GetAccountDetails(string Account_Number);
下面是实现

 public string GetAccountDetails(string Account_Number)
        {
            List<object> customers = new List<object>();
            string sql = "SELECT * FROM Current_Account_Holder_Details WHERE Account_Number = @Account_Number";
            using (SqlConnection conn = new SqlConnection())
            {
                conn.ConnectionString = ConfigurationManager.ConnectionStrings["DBCS"].ConnectionString;
                using (SqlCommand cmd = new SqlCommand(sql))
                {
                    cmd.Parameters.AddWithValue("@Account_Number", Account_Number);
                    cmd.Connection = conn;
                    conn.Open();
                    using (SqlDataReader sdr = cmd.ExecuteReader())
                    {
                        while (sdr.Read())
                        {

                            customers.Add(new
                            {
                                Tittle = sdr["Tittle"],
                                Account_Holder_First_Name = sdr["Account_Holder_First_Name"],
                                Account_Holder_Last_Name = sdr["Account_Holder_Last_Name"],
                                Account_Holder_DOB = sdr["Account_Holder_DOB"],
                                Account_Holder_House_No = sdr["Account_Holder_House_No"],
                                Account_Holder_Street_Name = sdr["Account_Holder_Street_Name"],
                                Account_Holder_Post_Code = sdr["Account_Holder_Post_Code"],

                                Account_Holder_Occupation = sdr["Account_Holder_Occupation"],
                                Account_Number = sdr["Account_Number"]



                            });
                        }
                    }
                    conn.Close();
                }

                return (new JavaScriptSerializer().Serialize(customers));
            }

        }
这是HTML

@{
    Layout = null;
}

<!DOCTYPE html>

<html ng-app="WebClientModule">
<head>
    <meta name="viewport" content="width=device-width" />

    <title>AccountBalance</title>
    <script src="~/Scripts/angular.min.js"></script>

    <script src="~/RegistrationScript/AccountBalance.js"></script>
</head>
<body>
    <div data-ng-controller="Web_Client_Controller">
        Enter Account_Number: <input type="text" ng-model="Account_Number" />
        <input type="button"  value="search" ng-click="search(Account_Number)" />

            <table id="tblContainer">
                <tr>
                    <td>
                        <table style="border: solid 2px Green; padding: 5px;">
                            <tr style="height: 30px; background-color: skyblue; color: maroon;">
                                <th></th>
                                <th>Account Number</th>
                                <th>Account Creation Date</th>
                                <th>Account Type</th>
                                <th>Branch Sort Code</th>
                                <th>Account Fees</th>
                                <th>Account Balance</th>
                                <th>Over Draft Limit</th>

                                <th></th>
                                <th></th>
                            </tr>
                            <tbody data-ng-repeat="user in Users">
                                <tr>
                                    <td></td>
                                    <td><span>{{user.Account_Number}}</span></td>
                                    <td><span>{{user.Account_Creation_Date}}</span></td>
                                    <td><span>{{user.Account_Type}}</span></td>
                                    <td><span>{{user.Branch_Sort_Code}}</span></td>

                                    <td><span>{{user.Account_Fees}}</span></td>
                                    <td><span>{{user.Account_Balance}}</span></td>
                                    <td><span>{{user.Over_Draft_Limit}}</span></td>
                                    <td>

                                </tr>
                            </tbody>
                        </table>
                    </td>
                </tr>
                <tr>
                    <td></td>
                </tr>
                <tr>
                    <td>

                        <div style="color: red;">{{Message}}</div>

                    </td>
                </tr>
            </table>
        </div>
        </body>


</html>
@{
布局=空;
}
账户余额
输入帐号:
帐号
帐户创建日期
帐户类型
分支排序代码
账户费用
账户余额
超限吃水
{{user.Account{u Number}
{{user.Account\u Creation\u Date}
{{user.Account_Type}
{{user.Branch\u Sort\u Code}
{{user.Account_Fees}
{{user.Account_Balance}}
{{user.Over\u Draft\u Limit}}
{{Message}}
下面是Wcf服务上调试模式的屏幕截图。

以下是谷歌Chrome控制台窗口上的结果。 你应该改变它

$http.post("http://localhost:52098/HalifaxIISService.svc/GetAccountDetails/{Account_Number}" + Id);


您正在以
{Account\u Number}15
的形式发送参数。它应该是
15

您的
$http.post
有一个参数(url,没有数据),它不应该是
$http.get
吗?在url中,我已经提到了参数请检查脚本文件代码的语法是否错误,然后了解此帖子被否决的原因。是问题不清楚吗?非常感谢。我是否也要更改界面?最好换个帖子。因为您尚未将任何内容发布到终结点。我进行了更改,同时也更改了接口。现在,我得到了一个错误,即服务终结点现在找到了,如果您说“使其获得”。使用GET请求,我无法在接口方法中传递参数。为了得到正确的结果,我必须做哪些更改。
$http.post("http://localhost:52098/HalifaxIISService.svc/GetAccountDetails/{Account_Number}" + Id);
$http.post("http://localhost:52098/HalifaxIISService.svc/GetAccountDetails?Account_Number=" + Id);