in WindowsSmartInk/SmartInkLaboratory/ViewModels/NewPackageViewModel.cs [104:146]
public NewPackageViewModel(IProjectPackageMapper mapper, ITagService tags, IAppStateService state,INavigationService nav)
{
_mapper = mapper;
_tags = tags;
_state = state;
_nav = nav;
_packageManager = new PackageManager();
this.Save = new RelayCommand(async () =>
{
ISmartInkPackage package;
try
{
if (IsMediaPackage)
package = await _packageManager.CreateLocalPackageAsync<SmartInkMediaPackage>(Name);
else
package = await _packageManager.CreateLocalPackageAsync<SmartInkPackage>(Name);
var taglist = await _tags.GetTagsAsync();
var newTags = new Dictionary<Guid, string>();
foreach (var tag in taglist)
{
newTags.Add(tag.Id, tag.Name);
}
await package.AddTagsAsync(newTags);
await _mapper.AddAsync(package.Name, _state.CurrentProject.Id.ToString());
_state.SetCurrentPackage(package);
Reset();
}
catch (Exception)
{
}
},
()=> {
return !string.IsNullOrWhiteSpace(Name) && !string.IsNullOrWhiteSpace(Version);
});
}