注释习惯


#region File Header & Copyright Notice
/*
* Copyright (C) 2014 AUGMENTUM, INC. All Rights Reserved.
* THIS SOURCE CODE IS CONFIDENTIAL AND PROPRIETARY AND MAY NOT BE USED
* OR DISTRIBUTED WITHOUT THE WRITTEN PERMISSION OF Luke, INC.
*
*/
#endregion

using System;
using System.Threading;
using System.Windows.Forms;
using System.ServiceModel;
using System.ComponentModel;

using Constant;
using Model;
using OES.Teacher;
using Tool;

namespace OES
{

/// <summary>
/// This class is used for login.
/// </summary>
public partial class FormLogin : Form
{
#region Field

private log4net.ILog log = log4net.LogManager.GetLogger(EqualsConst.GetLoggerName);
public User user = null;

#endregion

#region Constructor

public FormLogin()
{
InitializeComponent();
}

#endregion

#region Private Method

/// <summary>
/// The processing of btnSubmit.
/// </summary>
/// <param name="sender">The source object of event.</param>
/// <param name="e">The parameter of event.</param>
private void BtnSubmit_Click(object sender, EventArgs e)
{
UserBllService.UserBllClient userBll = new UserBllService.UserBllClient();

if (String.IsNullOrWhiteSpace(this.txtUsername.Text))
{
this.lblLoginResult.Text = Constant.UserException.UserNameIsNull;
}
else if (String.IsNullOrWhiteSpace(this.txtPassword.Text))
{
this.lblLoginResult.Text = Constant.UserException.PasswordIsNull;
}
else
{
string userName = CheckForParameter.ReplaceSqlChar(this.txtUsername.Text.Trim());
string password = CheckForParameter.ReplaceSqlChar(this.txtPassword.Text.Trim());

try
{
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += new DoWorkEventHandler(
delegate
{
user = userBll.RetrieveUserByUserName(userName);
});

bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(
delegate(object obj, RunWorkerCompletedEventArgs arg)
{
if (arg.Error == null)
{
if (null != user && user.Password.Equals(MD5Tool.MD5Tostring(password), StringComparison.InvariantCultureIgnoreCase))
{
this.DialogResult = DialogResult.OK;
}
else
{
this.lblLoginResult.Text = UserException.LoginedFailed;
}
}
else
{
log.Error(arg.Error);
MessageBox.Show(UIException.ConnectionWithWCFFail);
}
});

bw.RunWorkerAsync();
}
catch (FaultException<MyExceptionContainer> myException)
{
log.Error(myException.Message, myException);
}
catch (FaultException faultException)
{
log.Error(faultException.Message, faultException);
}
catch (Exception exception)
{
log.Error(exception.Message, exception);
}
}
}

/// <summary>
/// The processing of close the form.
/// </summary>
/// <param name="sender">The source object of event.</param>
/// <param name="e">The parameter of event.</param>
private void BtnCancel_Click(object sender, EventArgs e)
{
this.Close();
this.Dispose();
}

#endregion
}
}


#region File Header & Copyright Notice
/*
* Copyright (C) 2014 AUGMENTUM, INC. All Rights Reserved.
* THIS SOURCE CODE IS CONFIDENTIAL AND PROPRIETARY AND MAY NOT BE USED
* OR DISTRIBUTED WITHOUT THE WRITTEN PERMISSION OF Luke, INC.
*/
#endregion

using System.Collections;
using System.Collections.Generic;

using Model;
using Constant;

namespace Dal
{
/// <summary>
/// This interface id defined for exam‘s functions.
/// </summary>
public interface IExamDal
{
#region Return List

/// <summary>
/// Gets exam list when first load in take exam.
/// </summary>
/// <param name="order">Judge get the exam is finished or not. 0 equals finished ohter equals unfinished.</param>
/// <returns>Return list of exam</returns>
IList<Exam> RetrieveExamList(string userName, int order);

/// <summary>
/// Gets the list of finished exam.
/// </summary>
/// <param name="userName">The user‘s name.</param>
/// <param name="isFinished">The exam is finished or not.</param>
/// <param name="keyWord">The search of finished exam key word.</param>
/// <returns>Returns finished exam list.<ExamFinshed></returns>
IList<ExamFinished> RetrieveFinishedExamList(string userName, bool isFinished, string keyWord);

/// <summary>
/// Gets QuestionID list for taking exmaing.
/// </summary>
/// <param name="examId">The exam‘s id.</param>
/// <returns>Returns the question‘s id list of the exam.</returns>
ArrayList RetrieveQuestionIdList(int examId);

/// <summary>
/// Gets exams by examName key words.
/// </summary>
/// <param name="keyWork">The key work.</param>
/// <returns>Return exam list.</returns>
IList<Exam> RetrieveUnFinishedExamListByKeyWord(string userName, string keyWork);

/// <summary>
/// Retrieves exam result.
/// </summary>
/// <returns>Returns examreport list.</returns>
IList<ExamReport> RetrieveExamReportList(Page page);

/// <summary>
/// Retrieves score by exam id for paging.
/// </summary>
/// <see cref="Model.Page"/>
/// <param name="examId">The id of exam.</param>
/// <returns>Returns the score list.</returns>
IList<Score> RetrieveDetailExamScore(Page page, int examId);

/// <summary>
/// Retrieve score list by exam‘s id.
/// </summary>
/// <param name="examId">The exam‘s id.</param>
/// <returns>Returns the list of score.</returns>
IList<Score> RetrieveScoreByExamId(int examId);
#endregion

#region Returns Model

/// <summary>
/// Gets the question by question id.
/// </summary>
/// <param name="questionID">The id of the question.</param>
/// <returns>Returns question model.</returns>
Question RetrieveQuestionById(int questionId);

/// <summary>
/// Gets the exam model by exam id.
/// </summary>
/// <param name="examId">The id of exam.</param>
/// <returns>Return exam model.</returns>
Exam RetrieveExamByExamId(int examId);

/// <summary>
/// Gets score by userName and examId.
/// </summary>
/// <param name="userName">The user‘s name.</param>
/// <param name="examId">The exam‘s id.</param>
/// <returns>Score</returns>
Score RetrieveScoreByUserNameAndExamId(string userName, int examId);

#endregion

#region Void

/// <summary>
/// Records the exam information when user loads exam testing.
/// </summary>
/// <see cref="Model.Score"/>
int InsertIntoScore(Score score);

/// <summary>
/// Submits the answer and record use‘s answer and update score.
/// </summary>
/// <see cref="Model.RecordAnswer"/>
/// <see cref="Model.Score"/>
int SubmitExam(RecordAnswer recordAnswer, Score score);

/// <summary>
/// Updates the score information of exam when user click finished button.
/// </summary>
/// <see cref="Model.Score"/>
/// <returns>Returns score model.</returns>
int SubmitFinishedExam(Score score);

/// <summary>
/// Submits the exam by system when role loaded.
/// </summary>
/// <param name="userName">The user‘s name.</param>
int SubmitOutTimeExamByUser(string userName, string roleType);

/// <summary>
/// Updates score table of currentExamPaperQuestionID column.
/// </summary>
/// <see cref="Model.Score"/>
/// <returns>Return the influence number.</returns>
int UpdateScoreByTimer(Score score);

#endregion

#region Returns Bool

/// <summary>
/// Judges the exam is out time or not.
/// </summary>
/// <param name="userName">The user‘s name.</param>
/// <param name="examId">The exam‘s id.</param>
/// <returns>Returns a bool result about the exam is out time or not.</returns>
bool IsExamOutTime(string userName, int examId);

#endregion
}
}


namespace Dal
{
/// <summary>
/// This class is provided to implement <c>IExamDal</c> methods.
/// </summary>
public class ExamDal : IExamDal
{

#region Returns List

/// <summary>
/// Gets exam list when first loaded in take exam.
/// </summary>
/// <param name="order">Judge get the exam is finished or not. 0 equals finished ohter equals unfinished.</param>
/// <returns>Return exam list.</returns>
public IList<Exam> RetrieveExamList(string userName, int order)
{
IList<Exam> examList = null;

try
{
string sqlText = null;

if (order == 0)
{
sqlText = SqlText.RetrieveUNFinishedExam;
}
else
{
sqlText = SqlText.RetrieveToDoExam;
}

SqlParameter[] prams = new SqlParameter[] {
new SqlParameter("@userName", userName),
};
SqlDataReader sqlDataReader = SqlHelper.ExecureReader(sqlText, prams);
examList = new List<Exam>();
Exam exam = null;

while (sqlDataReader.Read())
{
exam = new Exam();
exam.ExamId = (int)sqlDataReader["exam_id"];
exam.Name = sqlDataReader["name"].ToString();
exam.SingleQuestionScore = (int)sqlDataReader["single_question_score"];
exam.Quantity = (int)sqlDataReader["quantity"];
exam.TotalScore = (int)sqlDataReader["total_score"];
exam.Duration = (int)sqlDataReader["duration"];
exam.Description = sqlDataReader["description"].ToString();
exam.PassScore = (int)sqlDataReader["pass_score"];
examList.Add(exam);
}

SqlHelper.CloseSqlDataReader(sqlDataReader);
}
catch (SqlException ex)
{
throw new ExamException(ExamException.RetrieveExamList,ex);
}

return examList;
}

注释习惯

时间: 2024-12-22 06:09:52

注释习惯的相关文章

iOS开发——注释总结OC篇&amp;够逼格的注释习惯总结

够逼格的注释习惯总结 首先关于注意这里就不说什么VVDocument了,来点新鲜的! 也许你使用过#warning 警告提示 也许你也使用过#pragma marks. 但是你见过或者使用过下面这个吗? Comments containing: MARK: TODO: FIXME: !!!: ???: 没有,那么你就快速的看看下面的内容,非常好用,也非常简单,不过具体使用看个人 首先说一下三个最常用的: 1.TODO 等待实现的功能 2.FIXME 需要修正的功能 3.!!! 需要改进的功能 具

养成代码注释习惯,帮助你更好使用NetBeans导航器

在使用NetBeans编写php代码时,为了在一个类中,或者在方法库文件中快速找到你想要找的函数或方法,通常我们会使用NetBeans的导航器. 我们看一个导航器的事例: 大家知道,在php中代码习惯是不会在声明变量的时候,说明变量类型的. 但是如果在我们快速查询一个类库时,我们需要的只是怎么使用方法,并不需要知道方法在哪里和我们需要传递什么样的变量. 所以通过阅读导航器,就能完成我们的查询工作,是最好的. 首先看下面的代码: 按照上面的说明 只有按照上面注释的要点添加代码注释,才会出现在导航器

Android 优化代码代码写作习惯代码规整

今天我想说说代码习惯: 刚开始学Android时相信很多新手都会有一个疑问,我们作为菜鸟除了技术上的不足到底哪点比不上大神呢?相信问这个问题的新手,肯定是一个不服输的人(不能叫愤青吧,我认 为愤青貌似是个贬义词)所以喜欢问问题,但是一些经验丰富的大神有的时候就会说自己百度,不行谷歌,这么简单的问题还问!这可能深深的伤害到我们菜鸟,但挺多时候是应 该我们自己动手找自己研究,其实作为菜鸟不是不喜欢动手自己找自己写,只是想有个捷径站在巨人的肩膀上,但是事实却不是这样的因为所有的问题要想记得更牢固,更清

html开发那些不好的习惯,和问题。

最近网上看了好多html开发中那些问题和不好的习惯,顺手总结一下. 一.上下间距 在开发中你会发现你明明设置的两个p标签上下间距为20px但你实际测量中会发现他会多4~8px,这是为什么呢!如果你是老司机我想我就不用多说了, 因为设计稿中量的都是字与字上下的间距,其实你写p标签检查一下元素,p表标签会有留白,大概是会有上下都有2px左右的留白.这样的话在加上你的 上边距或下边距你在量的时候就多了点. <!DOCTYPE html><html> <head> <me

PHP注释

注释(Comments)是指在程序编写过程中,对程序文件或者代码片段额外添加的一个备注说明.通过注释可以提高代码可读性,让自己或其他开发人员更快速地理解程序的. 注释在程序编程中非常重要,恰当的注释程序不仅是程序员的个人习惯,更是责任的体现.但在实际过程中,大部分程序员都没有良好的对程序进行注释习惯,这往往会在日后对自己或他人造成相当大的麻烦. PHP 注释不属于 PHP 程序的一部分,其内容也不参与程序中的任何功能计算,在编辑器中以特殊颜色(如绿色)显示. PHP 注释符号 PHP 支持 C+

黑马程序员——Java基础语法(一) --- 关键字、标识符、注释、常量和变量、运算符

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 本篇博文主要总结java的基础语法,主要的内容包括:关键字.标识符.注释.常量和变量.运算符几部分. 一.关键字 关键字是被Java语言赋予了特殊含义的单词.关键字中所有的字母都是小写. java中的关键字主要包括如下几部分: 1.用于定

Doxygen 注释语法规范

背景 这一块的内容更多的是作为了解,但是可以以这样的规范作为自己的编程注释习惯,提高自己的软实力. Doxygen注释语法 注释格式 块注释建议统一使用 /** -- ***/ 行注释建议统一使用 ///< - /** -- */ Doxygen常用注释命令 @exception <exception-object> {exception description} 对一个异常对象进行注释. @warning {warning message } 一些需要注意的事情 @todo { thi

一个程序员的自我修养

在网上看到一篇程序员的自我修养,深以为然,不禁摘录一些,勉励自己 一个好的开发人员,应该能够全面.高效.严谨的去处理任何软件程序和业务问题,成为一个好的开发,是一个很有意思的话题,不过无论这个话题如何开展,基础两个字必不可少,虽然代码量是衡量开发能力的重要指标,但仅能够熟练的进行代码编写是不够的,更要能深刻的理解技术原理和业务逻辑,扎实的个人基础和技术基础往往会促进代码的编写,更游刃有余的解决问题. 下面说的一些基础,可能绝大部分开发人员都不会在意甚至忽略,但恰恰这些才是开发大厦的基石. 1.科

关于代码的一些心得体会(大神勿喷)

关于代码的一些心得体会   前  言 Lms 入行也有很久了,一直都只是忙着工作学习,却一直没能好好静下心来好好整理一下自己.时间久了,慢慢的代码越来越熟悉,敲起来也越来越顺手,自己缺总感觉有些不对.我总觉得代码不应该就是这么简单,不应该像写记叙文一样,一条一条慢慢的就罗列出来了,返回去看了看自己刚写代码的时候功能也都能够实现了.但是还是有那么多可以优化的地方.我觉得好的代码不应该只是把功能实现那么简单,我觉得好的代码应该有以下几条特点:第一,命名要规范,第二,可复用性,第三,就是注释.当然,当