I have read that the easiest way for setting up a connection and creating a table is putting the following line of codes in the webrole.cs onStart() method.
but for some reason I have got errors and when I put the same code in global.asax.cs Application_start() method. it works fine?
what is the difference
here is the code I am talking about : I am using tablestorage bytheway
…
CloudStorageAccount.SetConfigurationSettingPublisher((configName, configSettingPublisher) =>
{
var connectionString = RoleEnvironment.GetConfigurationSettingValue(configName);
configSettingPublisher(connectionString);
}
);
var account =
CloudStorageAccount.FromConfigurationSetting(
Constants.KEY_STORAGE);
//create table
var client = account.CreateCloudTableClient();
client.CreateTableIfNotExist(Constants.EMAILMERGE_TABLE);
/////////////////////////////////
and the Error I am getting is—————————–
SetConfigurationSettingPublisher needs to be called before FromConfigurationSetting can be used
Tnx for the tips!!
cheeers
For a worker role, we only need to put the code in OnStart. But for a web role, we need to put the code in two places. If you want to access storage in OnStart, please put the code in OnStart. If you want to access storage in your web application, please put the code in Global.asax’s Application_Start. If you need both, please put the code in both places.
Best Regards,
Ming Xu.