C#ASP.NET Web服务预订系统非数据库

时间:2012-10-23 08:42:01

标签: c# asp.net web-services arraylist

我遇到了一个我的小系统的麻烦,标题表明我正在使用ASP.NET和C#编程技术。特别是Web服务和数组列表。

或者我被告知我可以使用缓存对象存储数组列表或其他东西,但我不知道如何做这些。

当我在本地运行时,我的项目上的所有内容都很好但我似乎无法让它甚至运行Web服务。

我的程序如何运作是用户在一行中保留座位号并提供预订的名称。数据以字符串

传递
 "Seat Number " + seatNumber + " In Row Number " + rowNumber + " Is Reserved";

然后将其添加到数组列表中。输出看起来像这样: 第4行中的座位号5是保留的。重复的条目很容易防止,但是当我在Web服务上尝试这个时,我不认为任何数据都会传递。

保留座位时,执行以下代码:

// Retrieve the values from the form controls
string seat = boxSeat.Text;
string row = boxRow.Text;
string name = txtName.Text;

// Convert form control values for Row and Seat into integers
int Row2 = Convert.ToInt32(row);
int Seat2 = Convert.ToInt32(seat);

// Generate Reservation Request
var req = new ReservationRequest();
// Pass the form control values to the request
req.Row = Row2;
req.Seat = Seat2;
req.Name = name;
var resp = new ReservationResponse();

// Create SOAP client
var client = new ReservationsSoapClient();

ReservationRequestReservationResponse分别保存要传递的数据和确认消息。

这是我的网络服务的代码

[WebMethod]
public ReserveSeatResponse ReserveSeat(ReserveSeatRequest req)
{
    var resp = new ReserveSeatResponse();
    int rowNumber = req.Row;
    int seatNumber = req.Seat;
    string name = req.Name;
    string message;
    string seat = "Seat Number " + seatNumber + " In ";
    string row = "Row Number " + rowNumber;
    string booking = seat;
    booking += row;
    message = "Congratulations! " + booking + " is reserved by " + req.Name;
    reservations.Add(booking);
    resp.confirmation = message;
    return resp;

此代码应该检索行号和席位号以及ReservationRequest类中的预留名称,然后将其放入“预订”字符串并将其添加到数组中。我现在不关心重复,因为我想让它发挥作用。

我在表单中添加了messagebox.show(resp.confirmation);代码行来打印确认消息,但我尝试的所有内容都让我空白。

我真的很感激一些帮助,如果我需要更多的代码或任何东西只是评论,我会提供它。它真的很烦人

如果有人可以推荐C#中的缓存对象教程来处理webservices和数组,或者给我一些关于如何做到这一点的建议,或者只是使用ArrayList或Generic List我真的很感激。

非常感谢

1 个答案:

答案 0 :(得分:0)

如果您使用的是Firefox,请使用Firebug来识别问题,或者如果您的计算机上安装了fiddler,也可以使用它。

在Firebug中检查发送到Web服务的请求,并查看它在响应中发回的内容。