前段

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="../script/jquery-1.9.1.js"></script>
<script>
$(document).ready(function () {
$(".head").dblclick(function () {
//获取日期
var dt = $(this).attr("aaa");
window.open('WoDeRiChengAdd.aspx?d=' + dt, '_blank', 'width=450 height=350 toolbar=no');
});
$(".body").dblclick(function () {
//获得双击要修改的主键值
var key = $(this).attr("aaa");
window.open("WoDeRiChengEdit.aspx?id=" + key, "_blank", "width=450 height=350 toolbar=no");
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div> <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/RiChengGuanLi/WoDeYueJiHuaAdd.aspx">编制新计划</asp:HyperLink> </div>
<div align="center">
<h3 >我的月计划</h3>
<table bgcolor="black" border="0" cellpadding="0" cellspacing="1">
<tr id="head"> <%=ShowDay() %></tr>
<tr id="body"> <%=ShowDaySpan() %></tr>
</table>
</div>
</form>
</body>
</html>

  后端

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Globalization;
using System.Text;
public partial class RiChengGuanLi_WoDeYueJiHua : System.Web.UI.Page
{
public string ShowDay()
{
StringBuilder builder = new StringBuilder();
builder.Append("<tr align='center' bgcolor='navy' style='color:white;font-weight:bold;'>"); int year = DateTime.Now.Year;
int month = DateTime.Now.Month;
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
for (int i = 1; i <= 31; i++)
{
builder.Append("<td width='30'>"+i.ToString()+"</td>");
}
}
else if (month == 4 || month == 6 || month == 9 || month == 11)
{
for (int i = 1; i <= 30; i++)
{
builder.Append("<td width='30'>" + i.ToString() + "</td>");
}
}
else
{
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
{
//闰年2月
for (int i = 1; i <= 29; i++)
{
builder.Append("<td width='30'>" + i.ToString() + "</td>");
}
}
else
{
//平年2月
for (int i = 1; i <= 28; i++)
{
builder.Append("<td width='30'>" + i.ToString() + "</td>");
}
}
} builder.Append("</tr>");
return builder.ToString();
//GregorianCalendar gc = new GregorianCalendar();
//DateTime dt =new DateTime();
////int qq = dt.Day;
////int ww = dt.Year;
////int aa = dt.Month;
//gc.GetDaysInMonth(dt.Year,dt.Month,21);
//return null; }
public string ShowDaySpan()
{
StringBuilder builder = new StringBuilder();
//查询本人本月所有的计划
List<MonthPlans> plans = new MonthPlansBF().SelectMonthPlans(Session["user"].ToString(), DateTime.Now.Month);
foreach (MonthPlans data in plans)
{
builder.Append("<tr align='center' bgcolor='white' height='15' style='color:blue;font-weight:bold;'>"); int year = DateTime.Now.Year;
int month = DateTime.Now.Month;
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
for (int i = 1; i <= 31; i++)
{
List<MonthPlans> dayPlans = new MonthPlansBF().Select(data.PlanCode, new DateTime(year, month, i)); if (dayPlans.Count > 0)
{
TimeSpan ts = data.EndDay.Value - data.StartDay.Value; //计划开始与结束之间的时间间隔
int colspan = ts.Days+1; //要合并几个单元格
if (i == data.StartDay.Value.Day) //开始合并单元格的第一个单元格
{
builder.Append("<td colspan='" + colspan + "' width='30' bgcolor='#FFFF00' title='" + data.Content + "'>" + data.Content + "</td>");
}
}
else
{
builder.Append("<td width='30'></td>");
}
}
}
else if (month == 4 || month == 6 || month == 9 || month == 11)
{
for (int i = 1; i <= 30; i++)
{
List<MonthPlans> dayPlans = new MonthPlansBF().Select(data.PlanCode, new DateTime(year, month, i));
if (dayPlans.Count > 0)
{
builder.Append("<td width='30' bgcolor='#FFFF00'></td>");
}
else
{
builder.Append("<td width='30'></td>");
}
}
}
else
{
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
{
//闰年2月
for (int i = 1; i <= 29; i++)
{
List<MonthPlans> dayPlans = new MonthPlansBF().Select(data.PlanCode, new DateTime(year, month, i));
if (dayPlans.Count > 0)
{
builder.Append("<td width='30' bgcolor='#FFFF00'></td>");
}
else
{
builder.Append("<td width='30'></td>");
}
}
}
else
{
//平年2月
for (int i = 1; i <= 28; i++)
{
List<MonthPlans> dayPlans = new MonthPlansBF().Select(data.PlanCode, new DateTime(year, month, i));
if (dayPlans.Count > 0)
{
builder.Append("<td width='30' bgcolor='#FFFF00'></td>");
}
else
{
builder.Append("<td width='30'></td>");
}
}
}
} builder.Append("</tr>");
}
return builder.ToString();
}
public string ShowTimeSpan()
{
StringBuilder builder = new StringBuilder(); GregorianCalendar gc = new GregorianCalendar();
DateTime dt = new DateTime();
int n = gc.GetDaysInMonth(dt.Year, dt.Month); for (int i = 1; i <= n; i++)
{
builder.Append("<div style='height:30px;border-bottom:1px solid black;text-align:center;line-height:30px; vertical-align:middle'>");
builder.Append(i.ToString("00"));
builder.Append("</div>");
}
return builder.ToString();
} protected void Page_Load(object sender, EventArgs e)
{ }
}

MouthPlanBF 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; public class MonthPlansBF
{
private DataClassesDataContext _Context = new DataClassesDataContext();
public List<MonthPlans> SelectMonthPlans(string owner, int month)
{
var query = _Context.MonthPlans.Where(p=>p.Owner == owner && p.StartDay.Value.Month == month);
return query.ToList();
}
public List<MonthPlans> Select(string planCode,DateTime date)
{
var query = _Context.MonthPlans.Where(p => p.PlanCode == planCode && date >= p.StartDay && date <= p.EndDay); return query.ToList();
}
public void Insert(string planCode, string owner, DateTime start, DateTime end, string content, string responser, string method, string goal)
{
MonthPlans data = new MonthPlans
{
PlanCode = planCode,
Owner = owner,
StartDay = start,
EndDay = end,
Content = content,
Responser = responser,
Method = method,
Goal = goal
};
_Context.MonthPlans.InsertOnSubmit(data);
_Context.SubmitChanges();
}
}

  

 sql server

asp.net get图的更多相关文章

  1. ASP.NET MVC中在Action获取提交的表单数据方法总结 (4种方法,转载备忘)

    有Index视图如下: 视图代码如下: <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Mas ...

  2. UML类图与类的关系详解

    摘自:http://www.uml.org.cn/oobject/201104212.asp UML类图与类的关系详解 2011-04-21 来源:网络 在画类图的时候,理清类和类之间的关系是重点.类 ...

  3. ASP.NET MVC5框架揭秘 学习笔记01

    1.自治视图 在早期(作者也没说明是多早,自己猜吧),我们倾向于将所有与UI相关的操作糅合在一起(现在我身边还有很多人这样做),这些操作包括UI界面的呈现. 用户交互操作的捕捉与响应(UI处理逻辑). ...

  4. ASP.NET MVC中在Action获取提交的表单数据方法

    有Index视图如下: 视图代码如下: <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Mas ...

  5. ASP精华[转]

    <% '#######以下是一个类文件,下面的注解是调用类的方法################################################ '# 注意:如果系统不支持建立S ...

  6. ASP.NET Core文件压缩最佳实践

    前言 在微软官方文档中,未明确指出文件压缩功能的使用误区. 本文将对 ASP.NET Core 文件响应压缩的常见使用误区做出说明. 误区1:未使用 Brotil 压缩 几乎不需要任何额外的代价,Br ...

  7. [.ashx檔?泛型处理程序?]基础入门#5....ADO.NET 与 将DB里面的二进制图片还原 (范例下载 & 大型控件的ImageField)

    [.ashx檔?泛型处理程序?]基础入门#5....ADO.NET 与 将DB里面的二进制图片还原 (范例下载 & 大型控件的ImageField) http://www.dotblogs.c ...

  8. MVVM in Depth

    这篇文章开始粗略的介绍了软件开发中松耦合的概念并讲述了使用MVC.MVP和MVVM三种模式达到松耦合.然后分析了这三种模式适用范围,其中: MVC(Model-View-Controller)适用于w ...

  9. mxgraph进阶(三)Web绘图——mxGraph项目实战(精华篇)

    Web绘图--mxGraph项目实战(精华篇) 声明     本文部分内容所属论文现已发表,请慎重对待. 需求 由于小论文实验需求,需要实现根据用户日志提取出行为序列,然后根据行为序列生成有向图的形式 ...

随机推荐

  1. Spring Batch介绍

    简介 SpringBatch 是一个大数据量的并行处理框架.通常用于数据的离线迁移,和数据处理,⽀持事务.并发.流程.监控.纵向和横向扩展,提供统⼀的接⼝管理和任务管理;SpringBatch是Spr ...

  2. python下载指定页面的所有图片

    实现步骤: 1.下载页面源码 2.对页面进行解析,获取页面中所有的图片路径 3.下载图片到指定路径 代码实例: # coding: utf-8 import urllib2 # 该模块用于打开页面地址 ...

  3. unicode gbk 转换函数

    typedef unsigned short WCHAR; //字库信息结构体定义 //用来保存字库基本信息,地址,大小等 __packed typedef struct { u8 fontok; / ...

  4. yield-from示例

    #!/usr/bin/python3# -*- coding: utf-8 -*-# @Time    : 2018/6/20 9:13# @File    : yield_from11.py fro ...

  5. Py修行路 python基础 (十九)面向对象进阶(下)

    item系列 __slots__方法 __next__ 和 __iter__实现迭代器  析构函数 上下文管理协议 元类一.item系列 把对象操作属性模拟成字典的格式.  例如:对象名['key'] ...

  6. 什么是闭包?在js中的作用是什么?

    闭包就是讲函数内部生成的变量保存到内存中,进行下次调用:也可以说函数外不可以调用函数内部的变量: 当函数内部返回一个函数时,闭包搭建了方法内部与方法外部的桥梁,使得外部也可以任意的获取到方法内部的资源 ...

  7. ubuntu双网卡准备配置

    近日有个需求,交换机有两台,做了堆叠,服务器双网卡,每个分别连到一台交换机上.这样就需要将服务器的网卡做成主备模式,以增加安全性,使得当其中一个交换机不通的时候网卡能够自动切换. 整体配置不难,网上也 ...

  8. Vue 简单的总结四(项目流程,DIY脚手架、vue-cli的使用)

    项目流程 1.下载 cdn 2.引包 vue-router依赖vue vue-router.js 3.如果是模块化机制 Vue.use(vue-router) 4.创建示例 let Home = {/ ...

  9. python签名设计

    将一个签名网站http://www.uustv.com/的内容爬下来显示出来 代码:sign.py from tkinter import * from tkinter import messageb ...

  10. python学习——练习题(2)

    """ 题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%: 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元 ...