📄 option.cs
字号:
using System;
using System.Data;
using System.Data.SqlClient;
namespace Wrox.WebModules.Polls.Business
{
/// <summary>
/// Summary description for Option.
/// </summary>
public sealed class Option : Wrox.WebModules.Business.BizObject
{
private Configuration.ModuleSettings settings;
private int optionID;
private int questionID;
private string text;
private int totalVotes;
private float percentage;
// constructors
public Option()
{
settings = Configuration.ModuleConfig.GetSettings();
ResetProperties();
}
public Option(int existingOptionID)
{
settings = Configuration.ModuleConfig.GetSettings();
optionID = existingOptionID;
LoadFromID();
}
public Option(Option existingOption)
{
settings = Configuration.ModuleConfig.GetSettings();
optionID = existingOption.ID;
LoadFromID();
}
// retrieve the values for the properties
private void LoadFromID()
{
Data.Options options = new Data.Options(settings.ConnectionString);
Data.OptionDetails details = options.GetDetails(optionID);
optionID = details.OptionID;
questionID = details.QuestionID;
text = details.OptionText;
totalVotes = details.TotalVotes;
percentage = details.Percentage;
}
public int LoadFromID(int existingOptionID)
{
optionID = existingOptionID;
LoadFromID();
return optionID;
}
// reset the properties
private void ResetProperties()
{
optionID = -1;
questionID = -1;
text = "";
totalVotes = 0;
percentage = 0;
}
// create a new record
public int Create(int optionQuestionID, string optionText)
{
Data.Options options = new Data.Options(settings.ConnectionString);
optionID = options.Add(optionQuestionID, optionText);
LoadFromID();
return optionID;
}
// update the record represented by this object
public bool Update()
{
Data.Options options = new Data.Options(settings.ConnectionString);
return options.Update(optionID, text);
}
// delete the record represented by this object
public bool Delete()
{
Data.Options options = new Data.Options(settings.ConnectionString);
bool ret = options.Delete(optionID);
ResetProperties();
return ret;
}
// PROPERTIES DEFINED BELOW
public int QuestionID
{
get { return questionID; }
}
public Business.Question Question
{
get { return new Question(questionID); }
}
public int ID
{
get { return optionID; }
}
public int TotalVotes
{
get { return totalVotes; }
}
public float Percentage
{
get { return percentage; }
}
public string Text
{
get { return text; }
set { text = value; }
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -