asp.net mvc3开发系统点滴之一
Controllers 引用数据
Models 组织数据
Views 呈现数据
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<IList<SQSMvcSolution.Models.Model.ScenicSpots>>" %>
<%@ Import Namespace="SQSMvcSolution.Extensions" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1">
<%Html.RenderPartial("UC_Meta"); %>
<%Html.RegisterScript("/DatePicker/WdatePicker.js", new { @language = "JavaScript" });%>
<%Html.RegisterScript("/js/jquery.js", new { });%>
<script type="text/javascript">
$(function() {
$('#loading_div').show();
$.ajax
(
{
url: "/Home/UC_Head",
cache: false,
success: function(html) {
$('#loading_div').hide();
$("#uchead").append(html);
}
}
);
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div id="loading_div" style="position: absolute; margin: 40px 0 0 130px; z-index: 100;
text-align: center; top: 1px; display: none; height: 80px; width: 523px; left: 478px;">
<img width="20" height="20" src="http://images.cnblogs.com/loading.gif" alt="" />
<font style="vertical-align: bottom">页面正在载入中,请稍等...</font>
</div>
<div id="uchead">
</div>
<div id="content">
<table>
<tr>
<th style="width: 150px">
景点名称
</th>
<th style="width: 150px">
景点编号
</th>
<th style="width: 150px">
景区编号
</th>
</tr>
<%if (Model!=null){ %>
<% foreach (var Md in Model)
{ %>
<tr style="width: 150px">
<td>
<%= Html.Encode(Md.ScenicSpots_Name) %>
</td>
<td>
<%= Html.Encode(Md.ScenicSpots_Code)%>
</td>
<td>
<%= Html.Encode(Md.Scenic_Code)%>
</td>
</tr>
<% } %>
<% } %>
</table>
<%=Html.ActionLink("我要订票", "TicketProject", "Ticket")%>
<%=Html.ActionLink("我要pic", "GetAllHotelPic", "test2")%>
<%-- <%= Html.ActionLink("我要酒店", "HotelTest", "Hotel", new { id = 3 },null)%>
<%= Html.RouteLink("我要酒店", new { controller = "Hotel", action = "HotelTest", id ="3" })%>--%>
</div>
<%Html.RenderPartial("UC_Foot"); %>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Web;
using SQSMvcSolution.Models.Model;
using System.ServiceModel;
using SQSMvcSolution.Commans;
namespace SQSMvcSolution.Models.BLL
{
/// <summary>
/// 票务业务逻辑类
/// </summary>
/// <author>方向华</author>
public class Ticket
{
private static readonly ServiceSqsTicket.TicketServiceClient dal = new SQSMvcSolution.ServiceSqsTicket.TicketServiceClient();//代理
private static readonly ILog4NetExtLog Loger = Log4NetExtLogManager.GetLogger("Ticket_WCF");//系统日志组件
private string error = String.Empty;
/// <summary>
/// 获取景点列表
/// </summary>
/// <returns></returns>
public IList<ScenicSpots> GetAllScenicSpots()
{
try
{
List<ScenicSpots> l = new List<ScenicSpots>();
ServiceSqsTicket.ScenicSpots[] ar = dal.GetScenicSpotsCl();
foreach (ServiceSqsTicket.ScenicSpots m in ar)
{
ScenicSpots md = new ScenicSpots();
md.ScenicSpots_NO = m.ScenicSpots_NO;
md.ScenicSpots_Name = m.ScenicSpots_Name;
md.ScenicSpots_Code = m.ScenicSpots_Code;
md.Scenic_Code = m.Scenic_Code;
l.Add(md);
}
return l;
}
catch (CommunicationException comex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:IList<ScenicSpots> GetAllScenicSpots()。</br>";
error += "错误类型:通信服务异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, comex);
return null;
}
catch (ObjectDisposedException objex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:IList<ScenicSpots> GetAllScenicSpots()。</br>";
error += "错误类型:通信状态异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, objex);
return null;
}
catch (TimeoutException Timeex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:IList<ScenicSpots> GetAllScenicSpots()。</br>";
error += "错误类型:通信超时异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, Timeex);
return null;
}
}
/// <summary>
/// 用户预订门票是否存在状态值
/// </summary>
/// <returns></returns>
public int GetBookTicketStaus(string scenicspots_code)
{
try
{
return dal.GetTicketStatus(scenicspots_code);
}
catch (CommunicationException comex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int GetBookTicketStaus(string scenicspots_code)。</br>";
error += "错误类型:通信服务异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, comex);
return -1;
}
catch (ObjectDisposedException objex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int GetBookTicketStaus(string scenicspots_code)。</br>";
error += "错误类型:通信状态异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, objex);
return -1;
}
catch (TimeoutException timeex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int GetBookTicketStaus(string scenicspots_code)。</br>";
error += "错误类型:通信超时异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, timeex);
return -1;
}
}
/// <summary>
/// 按景点获取票务列表
/// </summary>
/// <param name="scenicspots_code"></param>
/// <returns></returns>
public IList<TicketPlans> GetAllTicketPlans(string scenicspots_code)
{
try
{
List<TicketPlans> l = new List<TicketPlans>();
ServiceSqsTicket.TicketSalePlan[] ar = dal.GetTicketSalePlanCl(scenicspots_code);
foreach (ServiceSqsTicket.TicketSalePlan m in ar)
{
TicketPlans md = new TicketPlans();
md.TicketType_NO = m.TicketType_NO;
md.ScenicSpots_Code = m.ScenicSpots_Code;
md.TicketType_Name = m.TicketType_Name;
md.TicketType_Price = m.TicketType_Price;
md.TicketSalePlan_DiscountPrice = m.TicketSalePlan_DiscountPrice;
md.TicketSalePlan_NO = m.TicketSalePlan_NO;
md.TicketType_Code = m.TicketType_Code;
md.TicketSalePlan_ValidDaySum = (int)m.TicketSalePlan_ValidDaySum;
md.Mnum = 0;
l.Add(md);
}
return l;
}
catch (CommunicationException comex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:IList<TicketPlans> GetAllTicketPlans(string scenicspots_code)。</br>";
error += "错误类型:通信服务异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, comex);
return null;
}
catch (ObjectDisposedException objex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:IList<TicketPlans> GetAllTicketPlans(string scenicspots_code)。</br>";
error += "错误类型:通信状态异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, objex);
return null;
}
catch (TimeoutException timeex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:IList<TicketPlans> GetAllTicketPlans(string scenicspots_code)。</br>";
error += "错误类型:通信超时异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, timeex);
return null;
}
}
/// <summary>
///景点用户订单入库并返回数据处理状态
/// </summary>
/// <returns></returns>
public long CreateTicketUserOrders
(
//string _weborder_number,
int _weborder_usertype,
long _webuser_no,
DateTime _weborder_time,
string _weborder_tickettype,
int _weborder_touristsum,
decimal _weborder_pricesum,
DateTime _weborder_arrivaltime,
int _weborder_payment,
int _weborder_paid,
int _weborder_gettickettype,
string _weborder_getticket,
string _weborder_userno,
string _weborder_userpassword,
string _weborder_memo
)
{
try
{
return dal.CreatTicketUserOrders
(
//_weborder_number,
_weborder_usertype,
_webuser_no,
_weborder_time,
_weborder_tickettype,
_weborder_touristsum,
_weborder_pricesum,
_weborder_arrivaltime,
_weborder_payment,
_weborder_paid,
_weborder_gettickettype,
_weborder_getticket,
_weborder_userno,
_weborder_userpassword,
_weborder_memo
);
}
catch (CommunicationException comex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int CreateTicketUserOrders。</br>";
error += "错误类型:通信服务异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, comex);
return -1;
}
catch (ObjectDisposedException objex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int CreateTicketUserOrders。</br>";
error += "错误类型:通信状态异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, objex);
return -1;
}
catch (TimeoutException timeex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int CreateTicketUserOrders。</br>";
error += "错误类型:通信超时异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, timeex);
return -1;
}
}
/// <summary>
///景点用户订单入库后,并更新订单是否已成功支付状态
/// </summary>
/// <param name="_weborder_number"></param>
/// <returns></returns>
public int UpdateTicketUserOrdersStaus(long _weborder_number)
{
try
{
return dal.UpdateTicketUserOrdersStaus(_weborder_number);
}
catch (CommunicationException comex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int UpdateTicketUserOrdersStaus(string _weborder_number)。</br>";
error += "错误类型:通信服务异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, comex);
return -1;
}
catch (ObjectDisposedException objex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int UpdateTicketUserOrdersStaus(string _weborder_number)。</br>";
error += "错误类型:通信状态异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, objex);
return -1;
}
catch (TimeoutException timeex)
{
error = "错误模块:WCF服务模块。</br>";
error += "错误地址:int UpdateTicketUserOrdersStaus(string _weborder_number)。</br>";
error += "错误类型:通信超时异常。</br>";
error += "错误内容:</br>";
Loger.Error(error, timeex);
return -1;
}
}
public System.Data.DataTable GetAllHotelPic()
{
return dal.GetAllHotelPic();
}
}
}
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
using SQSMvcSolution.Commans;
using System.Web.Routing;
using SQSMvcSolution.Filters;
using System.Text;
using Discuz.Forum;
using Discuz.Common;
namespace SQSMvcSolution.Controllers
{
/// <summary>
/// 系统首页控制器
/// </summary>
/// <author>方向华</author>
public class HomeController : GlobalController
{
//[OutputCache(Duration = 1200, VaryByParam = "")]
//[ExceptionFilter]
public ActionResult Index()
{
Title = "三清山官方网首页";
SQSMvcSolution.Models.BLL.Ticket Bl = new SQSMvcSolution.Models.BLL.Ticket();
IList<SQSMvcSolution.Models.Model.ScenicSpots> l = Bl.GetAllScenicSpots();
if (l == null)
{
return Redirect("CommError.htm");
}
else
{
return View(l);
}
}
public ActionResult UC_Head()
{
SQSMvcSolution.Models.Model.LoginInfo md = new SQSMvcSolution.Models.Model.LoginInfo();
int userid = Discuz.Common.Utils.StrToInt(ForumUtils.GetCookie("userid"), -1);
if (userid != -1)
{
Discuz.Entity.ShortUserInfo users = Users.GetShortUserInfo(userid);
string password = users.Password;
md.CenterUrl = "/bbs/usercp.aspx";
md.LoginUrl = string.Format("<font color=\"#ff0000\">{0}</font></A> <A href=\"/bbs/usercp.aspx\" target=\"_blank\">{1}</A> <A href=\"/bbs/logout.aspx?userkey={2}\">{3}</A>", "您好," + users.Username + "!", "用户中心",password.Length > 16 ? password.Substring(4, 8).Trim() : "", "退出");
if (users.Newpm > 0)
{
StringBuilder sb = new StringBuilder();
sb.Append("┊<img src=\"/images/msg.gif\" width=\"18\" height=\"12\"> <a href=\"/bbs/usercpinbox.aspx\" target=\"_blank\" style=\"FONT-SIZE: 12px;TEXT-DECORATION: underline;\">您有" + users.Newpmcount.ToString() + "条新消息</a>");
int pmsound = Utils.StrToInt(ForumUtils.GetCookie("pmsound"), 0);
if (pmsound > 0)
{
sb.Append("<bgsound src=\"/bbs/sound/pm" + pmsound.ToString() + ".wav\" loop=\"2\">");
}
md.MsgrUrl = sb.ToString();
}
}
else
{
md.CenterUrl = "/bbs/login.aspx";
md.LoginUrl = string.Format("<img src=\"/images/loginuser.gif\" width=\"16\" height=\"16\"/> <A href=\"/bbs/login.aspx\"><font color=\"#ff0000\">{0}</font></A> <font color=\"#cccccc\">{1}</font> <img src=\"/images/reguser.gif\" width=\"16\" height=\"16\"/> <A href=\"/bbs/register.aspx?agree=yes\"><font color=\"#0E5D2F\">{2}</font></A>", "登录", "新用户?", "注册");
}
return PartialView(md);
}
}
}
邮箱:steven9801@163.com
QQ: 48039387
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步