Calculate first and last day of week, month, year

System.DateTime SelectedDate = Today;
System.DateTime FirstDayOfWeekDate = SelectedDate.AddDays(SelectedDate.DayOfWeek * -1);
System.DateTime LastDayOfWeekDate = FirstDayOfWeekDate.AddDays(6);
System.DateTime FirstDayOfMonthDate = new System.DateTime(SelectedDate.Year, SelectedDate.Month, 1);
System.DateTime LastDayOfMonthDate = new System.DateTime(SelectedDate.Year, SelectedDate.Month, System.DateTime.DaysInMonth(SelectedDate.Year, SelectedDate.Month));
System.DateTime FirstDayOfYearDate = new System.DateTime(SelectedDate.Year, 1, 1);
System.DateTime LastDayOfYearDate = new System.DateTime(SelectedDate.Year, 12, System.DateTime.DaysInMonth(SelectedDate.Year, 12));
int DaysInTheYear = new System.DateTime(SelectedDate.Year, 12, System.DateTime.DaysInMonth(SelectedDate.Year, 12)).DayOfYear;

Get authenticated username

System.Security.Principal.IIdentity CurrentUserIdentity = HttpContext.Current.User.Identity;
System.Security.Principal.WindowsIdentity CurrentUserWindowsIdentity = (System.Security.Principal.WindowsIdentity)CurrentUserIdentity;
System.Diagnostics.Debug.Write(CurrentUserWindowsIdentity.Name);

Send an email

private void SendEmail(string FromEmailAddressText, string[] ToEmailAddressesText, string SubjectText, string EmailBodyText, string EmailServerNameText, string[] BccEmailAddressesText = null)
{
 Net.Mail.MailMessage EmailMailMessage = new Net.Mail.MailMessage();
 EmailMailMessage.From = new Net.Mail.MailAddress(FromEmailAddressText);
 foreach (string ToEmailAddressText in ToEmailAddressesText) {
  EmailMailMessage.To.Add(ToEmailAddressText);
 }
 if (BccEmailAddressesText != null) {
  foreach (void BccEmailAddressText_loopVariable in BccEmailAddressesText) {
   BccEmailAddressText = BccEmailAddressText_loopVariable;
   EmailMailMessage.Bcc.Add(BccEmailAddressText);
  }
 }
 EmailMailMessage.Subject = SubjectText;
 EmailMailMessage.Body = EmailBodyText;
 Net.Mail.SmtpClient EmailSmtpClient = new Net.Mail.SmtpClient(EmailServerNameText);
 EmailSmtpClient.UseDefaultCredentials = false;
 EmailSmtpClient.Credentials = new System.Net.NetworkCredential(System.Net.WebUtility.HtmlDecode("Username"), System.Net.WebUtility.HtmlDecode("Password"));
 EmailSmtpClient.Send(EmailMailMessage);
}

Create an array from a column of data in a table

protected void Page_Load(object sender, System.EventArgs e)
{
 Data.DataTable DataTable1 = new Data.DataTable();
 DataTable1.ReadXml("C:\\Data.xml");
 string[] ColumnValues = DataTableColumnValuesToStringArray(DataTable1, "ColumnName");
}

public string[] DataTableColumnValuesToStringArray(Data.DataTable PassedDataTable, string PassedColumnName)
{
 string[] functionReturnValue = null;
 if ((PassedDataTable.Columns.Contains(PassedColumnName) == false) | (PassedDataTable.Rows.Count < 1)) {
  return null;
  return functionReturnValue;
 }
 string[] ReturnValues = new string[PassedDataTable.Rows.Count];
 for (int i = 0; i <= PassedDataTable.Rows.Count - 1; i++) {
  ReturnValues(i) = Convert.ToString(PassedDataTable.Rows(i).Item(PassedColumnName));
 }
 return ReturnValues;
 return functionReturnValue;
}

Get unique values from entire table.

protected void Page_Load(object sender, System.EventArgs e)
{
 Data.DataSet DataSet1 = new Data.DataSet();
 DataSet1.ReadXml("C:\\Temp\\DataTable1.xml");
 Data.DataTable DataTable1 = DataSet1.Tables(0);
 Data.DataTable UniqueValuesInDataTable = GetUniqueTableValues(DataTable1);
}

protected Data.DataTable GetUniqueTableValues(Data.DataTable ValuesDataTable)
{
 Data.DataTable ReturnValuesDataTable = null;
 Data.DataTable UniqueColumnValuesDataTable = new Data.DataTable();
 UniqueColumnValuesDataTable.Columns.Add("UniqueValues");
 foreach (Data.DataColumn ValuesDataColumn in ValuesDataTable.Columns) {
  Data.DataTable UniqueValuesInThisColumnDataTable = ValuesDataTable.DefaultView.ToTable(true, ValuesDataColumn.ColumnName);
  UniqueValuesInThisColumnDataTable.Columns(0).ColumnName = "UniqueValues";
  foreach (Data.DataRow UniqueValuesDataRow in UniqueValuesInThisColumnDataTable.Rows) {
   UniqueColumnValuesDataTable.ImportRow(UniqueValuesDataRow);
  }
 }
 UniqueColumnValuesDataTable.DefaultView.Sort = "UniqueValues";
 ReturnValuesDataTable = UniqueColumnValuesDataTable.DefaultView.ToTable(true, "UniqueValues");
 return ReturnValuesDataTable;
}

Get text of uploaded file without saving to disc

protected void UploadButton_Click(object sender, System.EventArgs e)
{
 if (FileUpload1.FileName > "") {
  dynamic UploadedFileMemoryStream = new IO.MemoryStream(FileUpload1.FileBytes);
  string UploadedFileText = System.Text.Encoding.UTF8.GetString(UploadedFileMemoryStream.ToArray);
 }
}

Evaluate math expression from text

protected void Page_Load(object sender, System.EventArgs e)
{
 double OnePlusOne = EvaluateExpression("1+1");
 double SixMinusTwo = EvaluateExpression("6-2");
 double EightDividedByFour = EvaluateExpression("8/4");
 double FifteenSixteenths = EvaluateExpression("15/16");
 double RemainderOfFiveDividedByTwo = EvaluateExpression("5%2");
 double MultipleExpressions = EvaluateExpression("(1+1)*(6-2)-(8/4)/(15/16)");
 double InvalidOperation = EvaluateExpression("0/0");
}

public double EvaluateExpression(string ExpressionString)
{
 double ReturnValue = null;
 Data.DataTable ComputeDataTable = new Data.DataTable();
 try {
  ReturnValue = Convert.ToDouble(ComputeDataTable.Compute(ExpressionString, null));
  //Can only evaluate using the following arithmetic operations:
  //+ (addition), - (subtraction), * (multiplication), / (division), % (modulus)
 } catch {
 }
 return ReturnValue;
}