HomeGuides
Submit Documentation FeedbackJoin Developer CommunityLog In

Countries and regions

This topic describes how to configure countries and regions in Optimizely Commerce Cloud.

Countries and regions are used when configuring markets and tax jurisdictions, and can also be used on the front-end when dealing with Order management. On install, an extensive list of countries is created.

Classes in this topic are in the following namespaces:

  • Mediachase.Commerce.Orders
  • Mediachase.Commerce.Orders.Dto
  • Mediachase.Commerce.Orders.Managers

Working with countries and regions

Creating countries and regions

var dto = new CountryDto(); 
var countryRow = dto.Country.NewCountryRow(); 
  countryRow.Name = "Country Name"; 
  countryRow.Code = "AAA"; 
//Three digit country code. 
  countryRow.Ordering = 0;   
  countryRow.Visible = true;  
if (countryRow.RowState == DataRowState.Detached)     
  dto.Country.Rows.Add(countryRow);  
  dto.EnforceConstraints = false; 
var region = dto.StateProvince.NewStateProvinceRow(); 
  region.Name = "My Region"; 
  region.Ordering = 0; 
  region.Visible = true; 
  region.CountryId = dto.Country[0].CountryId;  
if (region.RowState == DataRowState.Detached)     
  dto.StateProvince.Rows.Add(region);  
  dto.EnforceConstraints = true;  
  CountryManager.SaveCountry(dto);

Updating countries and regions

var dto = CountryManager.GetCountry("USA", true); 
var countryRow = dto.Country[0]; 
  countryRow.Ordering = 20; 
  countryRow.Visible = false;  
var ca = countryRow.GetStateProvinceRows().FirstOrDefault(x => x.Name.Equals("California")); 
  ca.Ordering = 5; 
  CountryManager.SaveCountry(dto);

Deleting countries and regions

var dto = CountryManager.GetCountry("USA", true); var countryRow = dto.Country[0]; 
  countryRow.Delete(); 
  CountryManager.SaveCountry(dto);

What’s Next
Did this page help you?