You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

87 lines
2.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Common.Library.CustomObjects
{
public class AddressContainer
{
public string HouseNumber { get; set; }
public string StreetName { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Zip { get; set; }
public string AddressLine1 => string.Format("{0} {1}", HouseNumber, StreetName);
public string AddressLine2 => string.Empty;
public string CityStateZip => string.Format("{0}, {1} {2}", City, (State.Length > 2 ? GetStateAbbreviationFromName(State) : State), Zip);
private Dictionary<string, string> States => new Dictionary<string, string>()
{
{"AL", "Alabama"},
{"AK", "Alaska"},
{"AZ", "Arizona"},
{"AR", "Arkansas"},
{"CA", "California"},
{"CO", "Colorado"},
{"CT", "Connecticut"},
{"DE", "Delaware"},
{"DC", "District of Columbia"},
{"FL", "Florida"},
{"GA", "Georgia"},
{"HI", "Hawaii"},
{"ID", "Idaho"},
{"IL", "Illinois"},
{"IN", "Indiana"},
{"IA", "Iowa"},
{"KS", "Kansas"},
{"KY", "Kentucky"},
{"LA", "Louisiana"},
{"ME", "Maine"},
{"MD", "Maryland"},
{"MA", "Massachusetts"},
{"MI", "Michigan"},
{"MN", "Minnesota"},
{"MS", "Mississippi"},
{"MO", "Missouri"},
{"MT", "Montana"},
{"NE", "Nebraska"},
{"NV", "Nevada"},
{"NH", "New Hampshire"},
{"NJ", "New Jersey"},
{"NM", "New Mexico"},
{"NY", "New York"},
{"NC", "North Carolina"},
{"ND", "North Dakota"},
{"OH", "Ohio"},
{"OK", "Oklahoma"},
{"OR", "Oregon"},
{"PA", "Pennsylvania"},
{"RI", "Rhode Island"},
{"SC", "South Carolina"},
{"SD", "South Dakota"},
{"TN", "Tennessee"},
{"TX", "Texas"},
{"UT", "Utah"},
{"VT", "Vermont"},
{"VA", "Virginia"},
{"WA", "Washington"},
{"WV", "West Virginia"},
{"WI", "Wisconsin"},
{"WY", "Wyoming"}
};
private string GetStateNameFromAbbreviation(string abbr)
{
return States.FirstOrDefault(val => val.Key == abbr).Value;
}
private string GetStateAbbreviationFromName(string name)
{
return States.FirstOrDefault(val => val.Value == name).Key;
}
}
public class AddressContainerCollection : List<AddressContainer> { }
}