public void WhenAcceptingConfirmationToNavigateAway_ThenInvokesRequestCallbackWithTrue() { var emailServiceMock = new Mock <IEmailService>(); var viewModel = new ComposeEmailViewModel(emailServiceMock.Object); var uriQuery = new UriQuery(); uriQuery.Add("To", "*****@*****.**"); ((INavigationAware)viewModel).OnNavigatedTo(new NavigationContext(new Mock <IRegionNavigationService>().Object, new Uri("" + uriQuery.ToString(), UriKind.Relative))); InteractionRequestedEventArgs args = null; viewModel.ConfirmExitInteractionRequest.Raised += (s, e) => args = e; bool?callbackResult = null; ((IConfirmNavigationRequest)viewModel).ConfirmNavigationRequest( new NavigationContext(new Mock <IRegionNavigationService>().Object, new Uri("some uri", UriKind.Relative)), b => callbackResult = b); var confirmation = args.Context as Confirmation; confirmation.Confirmed = true; args.Callback(); Assert.IsTrue(callbackResult.Value); }
public override string ToString() { UriQuery query = new UriQuery(BaseUrl); query.Add("api_key", ApiKey); query.Add("format", "json"); if (!string.IsNullOrEmpty(Id)) { query.Add("id", Id); } if (!string.IsNullOrEmpty(Md5)) { query.Add("md5", Md5); } if (Bucket.HasValue) { foreach (var bucket in Bucket.Value.GetBucketDescriptions()) { query.Add("bucket", bucket); } } return(query.ToString()); }
public void WhenRequestedForVetoOnNavigationAfterSubmitting_ThenDoesNotRaiseInteractionRequest() { var emailServiceMock = new Mock <IEmailService>(); var viewModel = new ComposeEmailViewModel(emailServiceMock.Object); var uriQuery = new UriQuery(); uriQuery.Add("To", "*****@*****.**"); ((INavigationAware)viewModel).OnNavigatedTo(new NavigationContext(new Mock <IRegionNavigationService>().Object, new Uri("" + uriQuery.ToString(), UriKind.Relative))); InteractionRequestedEventArgs args = null; viewModel.ConfirmExitInteractionRequest.Raised += (s, e) => args = e; viewModel.SendEmailCommand.Execute(null); bool?callbackResult = null; ((IConfirmNavigationRequest)viewModel).ConfirmNavigationRequest( new NavigationContext(new Mock <IRegionNavigationService>().Object, new Uri("some uri", UriKind.Relative)), b => callbackResult = b); Assert.IsNull(args); Assert.IsTrue(callbackResult.Value); }
public override string ToString() { UriQuery query = new UriQuery(BaseUrl); query.Add("api_key", ApiKey); query.Add("format", "json"); if (!string.IsNullOrEmpty(Id)) { query.Add("id", Id); } if (!string.IsNullOrEmpty(TrackId)) { query.Add("track_id", TrackId); } if (Bucket.HasValue) { foreach (var bucket in Bucket.Value.GetBucketDescriptions()) { query.Add("bucket", bucket); } } if (Limit.HasValue) { query.Add("limit", Limit.Value.ToString().ToLower()); } return query.ToString(); }
public void NavigateToPolicyDetail(int policyId) { var query = new UriQuery(); AddPolicyIdParameter(query, policyId); OpenView(ViewContractNames.POLICY_DETAIL_VIEW, query); }
private UriQuery GetQuery() { UriQuery query = Build(Url) .Add("api_key", ApiKey); return(query); }
public void NavigateToClaimList(int policyId) { var query = new UriQuery(); this.AddPolicyIdParameter(query, policyId); navigationService.OpenView(ViewContractNames.CLAIM_LIST_VIEW, query, RegionNames.POLICY_DETAIL_REGION); }
public override void DialogCommand() { var visualStudioService = ApplicationController.ResolveType(typeof(IVisualStudioService)) as IVisualStudioService; if (visualStudioService == null) { throw new NullReferenceException("visualStudioService"); } var packageSettings = ApplicationController.ResolveType(typeof(XrmPackageSettings)) as XrmPackageSettings; if (packageSettings == null) { throw new NullReferenceException("packageSettings"); } if (packageSettings.Solution == null) { throw new NullReferenceException("Solution is not populated in the package settings"); } //WARNING THIS FOLDER IS CLEARED BEFORE PROCESSING SO CAREFUL IF CHANGE DIRECTORY var folderPath = visualStudioService.SolutionDirectory + "/TempSolutionFolder"; var request = CreatePackageRequest.CreateForCreatePackage(folderPath, packageSettings.Solution); var uri = new UriQuery(); uri.AddObject(nameof(CreatePackageDialog.Request), request); ApplicationController.NavigateTo(typeof(VsixCreatePackageDialog), uri); }
private async void LoginCommandExecuteAsync(object obj) { await _authenticationRepository.PostAuthorizationAsync(User); if (_authenticationRepository.Authentic.IsAuthorised) { UriQuery query = new UriQuery(); NavigatePatameters.Save(_authenticationRepository.Authentic.GetHashCode(), _authenticationRepository.Authentic); query.Add("authenticationhash", _authenticationRepository.Authentic.GetHashCode().ToString()); Application.Current.Dispatcher.Invoke(new System.Action(() => { var regionManager = ServiceLocator.Current.GetInstance <IRegionManager>(); regionManager.RequestNavigate("MainRegion", new Uri("ServerView" + query.ToString(), UriKind.Relative), nr => { if (nr.Result.HasValue && nr.Result == false) { var error = nr.Error; } }); })); } else { MessageBox.Show("Unable to authenticate!", "Authorization error", MessageBoxButton.OK, MessageBoxImage.Error); } }
public static void RunWizardSettingsEntry(XrmPackageSettings packageSettings, VsixApplicationController applicationController, string solutionName) { //ensure the package settings resolves when the app settings dialog runs var resolvePackageSettings = applicationController.ResolveType(typeof(XrmPackageSettings)); if (resolvePackageSettings == null) { applicationController.RegisterInstance(typeof(XrmPackageSettings), new XrmPackageSettings()); } if (solutionName != null && string.IsNullOrWhiteSpace(packageSettings.SolutionObjectPrefix)) { packageSettings.SolutionObjectPrefix = solutionName.Split('.').First(); } var serviceFactory = applicationController.ResolveType <IOrganizationConnectionFactory>(); var recordService = new XrmRecordService(new XrmRecordConfiguration(), serviceFactory, formService: new XrmFormService()); var settingsDialog = new XrmPackageSettingsDialog(new DialogController(applicationController), packageSettings, null, recordService, saveButtonLabel: "Next"); settingsDialog.SaveSettings = false; var uriQuery = new UriQuery(); uriQuery.Add("Modal", true.ToString()); applicationController.NavigateTo(settingsDialog, uriQuery, showCompletionScreen: false, isModal: true); }
/// <summary> /// Navigates to active view. /// </summary> /// <param name="regionManager">The region manager.</param> /// <param name="regionName">Name of the region.</param> /// <param name="uriQuery">The URI query.</param> /// <param name="navigationCallback">The navigation callback.</param> public static void NavigateToActiveView( this IRegionManager regionManager, string regionName, UriQuery uriQuery, Action <NavigationResult> navigationCallback = null) { if (regionManager.Regions.ContainsRegionWithName(regionName) && regionManager.Regions[regionName].ActiveViews.Count() > 0) { var region = regionManager.Regions[regionName]; var view = region.ActiveViews.ElementAt(0) as FrameworkElement; var navigationAwareDataContext = view.DataContext as INavigationAware; navigationAwareDataContext.OnNavigatedTo( new NavigationContext(region.NavigationService, new Uri(uriQuery.ToString(), UriKind.Relative))); if (navigationCallback != null) { navigationCallback( new NavigationResult(new NavigationContext(null, new Uri(uriQuery.ToString(), UriKind.Relative)), true)); } } else { if (navigationCallback != null) { navigationCallback( new NavigationResult(new NavigationContext(null, new Uri(uriQuery.ToString(), UriKind.Relative)), false)); } } }
private void ExecuteGoToArtist(string artistName) { UriQuery q = new UriQuery(); q.Add("artistName", artistName); RegionManager.RequestNavigate(AppRegions.ViewRegion, typeof(ArtistView).FullName + q); }
/// <summary> /// Получение ключей ресурсов по запросу. /// </summary> /// <param name="name">Имя ресурса.</param> /// <param name="query">Запрос.</param> /// <param name="nmspace">Область запросов.</param> /// <returns>Ключи ресурсов.</returns> public IEnumerable <Guid> Query(string name, UriQuery query, string nmspace = "") { CheckInitialization(); var type = _registrationStorage[name].ResourceType; return(GetResourcesCommon(type, nmspace, query)); }
public void UnescapesQueryElements() { var query = new UriQuery("?a%3F=b%40"); Assert.AreEqual(1, query.Count()); Assert.AreEqual("b@", query["a?"]); }
public void EscapesQueryElements() { var query = new UriQuery(); query.Add("a?", "b@"); Assert.AreEqual("?a%3F=b%40", query.ToString()); }
public override string ToString() { UriQuery query = new UriQuery(BaseUrl); query.Add("api_key", ApiKey); query.Add("format", "json"); if (!string.IsNullOrEmpty(Name)) { query.Add("name", Name); } if (Bucket.HasValue) { foreach (var bucket in Bucket.Value.GetBucketDescriptions()) { query.Add("bucket", bucket); } } if (Limit.HasValue) { query.Add("limit", Limit.Value.ToString().ToLower()); } return(query.ToString()); }
/// <summary> /// Navigates to active view. /// </summary> /// <param name="regionManager">The region manager.</param> /// <param name="regionName">Name of the region.</param> /// <param name="uriQuery">The URI query.</param> /// <param name="navigationCallback">The navigation callback.</param> public static void NavigateToActiveView( this IRegionManager regionManager, string regionName, UriQuery uriQuery, Action<NavigationResult> navigationCallback = null ) { if ( regionManager.Regions.ContainsRegionWithName ( regionName ) && regionManager.Regions[regionName].ActiveViews.Count () > 0 ) { var region = regionManager.Regions[regionName]; var view = region.ActiveViews.ElementAt ( 0 ) as FrameworkElement; var navigationAwareDataContext = view.DataContext as INavigationAware; navigationAwareDataContext.OnNavigatedTo ( new NavigationContext ( region.NavigationService, new Uri ( uriQuery.ToString (), UriKind.Relative ) ) ); if ( navigationCallback != null ) { navigationCallback ( new NavigationResult ( new NavigationContext ( null, new Uri ( uriQuery.ToString (), UriKind.Relative ) ), true ) ); } } else { if ( navigationCallback != null ) { navigationCallback ( new NavigationResult ( new NavigationContext ( null, new Uri ( uriQuery.ToString (), UriKind.Relative ) ), false ) ); } } }
public void ExecutePopupCommand() { var uri = new UriQuery(); uri.Add("title", "Popup Window Header"); _interactionService.ShowPopupView(typeof(Popup.View), uri); }
/// <summary> /// Shows the popup. /// </summary> /// <param name="viewName">Name of the view.</param> /// <param name="commandName">Name of the command.</param> /// <param name="title">The title.</param> /// <param name="parameters">The parameters.</param> /// <param name="maximize">If set to <c>true</c> [maximize].</param> /// <param name="completedAction">The completed action.</param> /// <param name="isModal">If set to <c>true</c> [is modal].</param> public void ShowPopup( string viewName, string commandName = null, string title = null, KeyValuePair <string, string>[] parameters = null, bool maximize = false, Action completedAction = null, bool isModal = true) { var uriQuery = new UriQuery(); if (commandName != null) { uriQuery.Add("CommandName", commandName); } if (parameters != null) { foreach (var parameter in parameters) { uriQuery.Add(parameter.Key, parameter.Value); } } ShowPopup(viewName, new Uri(viewName + uriQuery, UriKind.Relative), title, completedAction ?? (() => { }), maximize, isModal); }
/// <summary> /// Executes the navigate back. /// </summary> private void ExecuteNavigateBack() { var q = new UriQuery(); q.Add("TabIndex", "1"); RegionManager.RequestNavigate(RegionNames.MainContent, new Uri(ViewNames.MainDataSetView + q, UriKind.Relative)); }
public void NavigateTo(object navigationObject, UriQuery uriQuery, bool showCompletionScreen = true, bool isModal = false) { uriQuery = uriQuery ?? new UriQuery(); if (navigationObject is DialogViewModel) { var dialog = navigationObject as DialogViewModel; foreach (var arg in uriQuery.Arguments) { var dialogProperty = dialog.GetType().GetProperty(arg.Key); if (dialogProperty != null) { if (dialogProperty.PropertyType == typeof(bool)) { dialog.SetPropertyValue(dialogProperty.Name, bool.Parse(arg.Value)); } else { var argObject = JsonHelper.JsonStringToObject(arg.Value, dialogProperty.PropertyType); var propertyValue = dialog.GetPropertyValue(dialogProperty.Name) ?? argObject; var mapper = new ClassSelfMapper(); mapper.Map(argObject, propertyValue); } } } LoadDialog(dialog, showCompletionScreen: showCompletionScreen, isModal: isModal); } else { throw new NotImplementedException("Not implemented for type " + navigationObject?.GetType().Name); } }
public void FlattensQueryWithSingleElement() { var query = new UriQuery(); query.Add("a", "b"); Assert.AreEqual("?a=b", query.ToString()); }
public override void DialogCommand() { var visualStudioService = ApplicationController.ResolveType(typeof(IVisualStudioService)) as IVisualStudioService; if (visualStudioService == null) { throw new NullReferenceException("visualStudioService"); } var files = visualStudioService.GetSelectedFileNamesQualified(); var request = new ImportCsvsRequest() { FolderOrFiles = ImportCsvsRequest.CsvImportOption.SpecificFiles, MatchByName = true, DateFormat = DateFormat.English, CsvsToImport = files.Select(f => new ImportCsvsRequest.CsvToImport() { Csv = new FileReference(f) }).ToArray() }; var uri = new UriQuery(); uri.AddObject(nameof(ImportCsvsDialog.Request), request); uri.AddObject(nameof(ImportCsvsDialog.SkipObjectEntry), true); ApplicationController.NavigateTo(typeof(ImportCsvsDialog), uri); }
public override string ToString() { UriQuery query = new UriQuery(BaseUrl); query.Add("api_key", ApiKey); query.Add("format", "json"); if (!string.IsNullOrEmpty(Id)) { query.Add("id", Id); } if (!string.IsNullOrEmpty(Md5)) { query.Add("md5", Md5); } if (Bucket.HasValue) { foreach (var bucket in Bucket.Value.GetBucketDescriptions()) { query.Add("bucket", bucket); } } return query.ToString(); }
public QueryCommand(string nodeName, string resName) { _query = new UriQuery { { "Node", nodeName } }; TargetName = resName; }
public override void DialogCommand() { var visualStudioService = ApplicationController.ResolveType(typeof(IVisualStudioService)) as IVisualStudioService; if (visualStudioService == null) { throw new NullReferenceException("visualStudioService"); } var selectedItems = visualStudioService.GetSelectedFileNamesQualified(); if (selectedItems.Count() != 1) { ApplicationController.UserMessage("Only one file may be selected to import"); return; } var request = new ImportSolutionRequest() { SolutionZip = new FileReference(selectedItems.First()) }; var uri = new UriQuery(); uri.AddObject(nameof(ImportSolutionDialog.Request), request); ApplicationController.RequestNavigate("Main", typeof(ImportSolutionDialog), uri); }
private void ExecuteNewWebsiteCommand() { var q = new UriQuery { { "WebsiteId", "-1" } }; RegionManager.RequestNavigate(RegionNames.MainContent, new Uri(ViewNames.WebsiteManageView + q, UriKind.Relative)); }
public Task <ImageResponse> ExecuteAsync(string name, int numberOfResults = 10, int start = 0, string license = null) { UriQuery query = GetQuery(numberOfResults, start, license); query.Add("name", name); return(ExecuteAsync <ImageResponse>(query.ToString())); }
public ImageResponse Execute(IdSpace id, int numberOfResults = 10, int start = 0, string license = null) { UriQuery query = GetQuery(numberOfResults, start, license); query.Add("id", id); return(Execute <ImageResponse>(query.ToString())); }
private void ExecuteGoToAlbum(Track track) { UriQuery q = new UriQuery(); q.Add("artistName", track.Artist); q.Add("albumName", track.Album); RegionManager.RequestNavigate(AppRegions.ViewRegion, typeof(AlbumView).FullName + q); }
public void GoToDashboard() { var uriQuery = new UriQuery(); var uri = new Uri(typeof(DashboardView).FullName + uriQuery, UriKind.Relative); _regionManager.RequestNavigate("ContentRegion", uri); }
public void CanParseQuery() { var query = new UriQuery("?a=b&c=d"); Assert.AreEqual(2, query.Count()); Assert.AreEqual("b", query["a"]); Assert.AreEqual("d", query["c"]); }
private void NavigateBack() { var q = new UriQuery { { "TabIndex", "3" } }; RegionManager.RequestNavigate(RegionNames.MainContent, new Uri(ViewNames.MainDataSetView + q, UriKind.Relative)); }
public void NextScreen() { var uriQuery = new UriQuery(); var uri = new Uri(typeof(RegisterView).FullName + uriQuery, UriKind.Relative); _regionManager.RequestNavigate("ContentRegion", uri); }
public void OpenView(string targetName, UriQuery uriQuery) { var builder = new StringBuilder(); builder.Append(targetName); builder.Append(uriQuery); regionManager.Regions[RegionNames.POLICY_DETAIL_REGION].RequestNavigate(builder.ToString()); }
public void FlattensQueryWithMultipleElements() { var query = new UriQuery(); query.Add("a", "b"); query.Add("b", "c"); Assert.AreEqual("?a=b&b=c", query.ToString()); }
private void RequestNavigate(Type type, UriQuery uriQuery) { ClearTabs(); var resolvedType = Container.ResolveType(type); _loadedObjects.Add(resolvedType); }
public static object[] Decipher(this IRegionManager regionManager, UriQuery parameters, params Type[] types) { var list = new List<object>(); for (int i = 0; i < parameters.Count(); i++) { list.Add(Deserialize(parameters[i.ToString()].DecompressString(), types[i])); } return list.ToArray(); }
public static dynamic Create(string apiKey, dynamic options) { var query = new UriQuery(Uri.AbsoluteUri + "create") { { "api_key", apiKey } }; return ExecuteQuery(options, query).Result; }
public override string ToString() { UriQuery query = new UriQuery(BaseUrl); query.Add("api_key", ApiKey); query.Add("format", "json"); if (!string.IsNullOrEmpty(Text)) { query.Add("text", Text); } if (Bucket.HasValue) { foreach (var bucket in Bucket.Value.GetBucketDescriptions()) { query.Add("bucket", bucket); } } if (Limit.HasValue) { query.Add("limit", Limit.Value); } if (MaxFamiliarity.HasValue) { query.Add("max_familiarity", MaxFamiliarity.Value); } if (MinFamiliarity.HasValue) { query.Add("min_familiarity", MinFamiliarity.Value); } if (MaxHotttnesss.HasValue) { query.Add("max_hotttnesss", MaxHotttnesss.Value); } if (MinHotttnesss.HasValue) { query.Add("min_hotttnesss", MinHotttnesss.Value); } if (Results.HasValue) { query.Add("results", Results.Value); } if (Sort.HasValue) { query.Add("sort", EnumHelpers.GetDescription(Sort.Value)); } return query.ToString(); }
private void ExecuteBrowseForAlbum(Tuple<string, string> parameter) { if (!string.IsNullOrEmpty(parameter.Item1) && !string.IsNullOrEmpty(parameter.Item2)) { UriQuery query = new UriQuery(); query.Add("artistName", parameter.Item1); query.Add("albumName", parameter.Item2); _regionManager.RequestNavigate(AppRegions.ViewRegion, typeof(AlbumView).FullName + query); } }
public void NavigateTo(string regionName, string viewExportName, Dictionary<string, string> queryParams) { if (queryParams.Any()) { var query = new UriQuery(); foreach(var param in queryParams) query.Add(param.Key, param.Value); _regionManager.RequestNavigate(regionName, new Uri(viewExportName + query, UriKind.Relative)); } else _regionManager.RequestNavigate(regionName, new Uri(viewExportName, UriKind.Relative)); }
private void SyncView( string id ) { // Navigate to the DetailsView, passing the item ID as a navigation parameter. // Only one DetailView instance is created. This instance is activated and // updated to display the details of the specified item. UriQuery parameters = new UriQuery(); parameters.Add( "ID", id ); _regionManager.RequestNavigate( RegionNames.MainRegion, new Uri( "DetailsView" + parameters.ToString(), UriKind.Relative ), NavigationCompleted ); }
private void NavigateToView( string id ) { // Navigate to the EditView, passing the item ID as a navigation parameter. // A new EditView instance is created for each item. If an EditView instance // for a particular item already exists, it is activated. UriQuery parameters = new UriQuery(); parameters.Add( "ID", id ); _regionManager.RequestNavigate( RegionNames.MainRegion, new Uri( "EditView" + parameters.ToString(), UriKind.Relative ), NavigationCompleted ); }
public void WhenNavigatedToWithAToQueryParameter_ThenInitializesToField() { var emailServiceMock = new Mock<IEmailService>(); var viewModel = new ComposeEmailViewModel(emailServiceMock.Object); var uriQuery = new UriQuery(); uriQuery.Add("To", "*****@*****.**"); ((INavigationAware)viewModel).OnNavigatedTo(new NavigationContext(new Mock<IRegionNavigationService>().Object, new Uri("" + uriQuery.ToString(), UriKind.Relative))); Assert.AreEqual("*****@*****.**", viewModel.EmailDocument.To); }
private void EmailContact(object ignored) { var uriQuery = new UriQuery(); var contact = this.contactsView.CurrentItem as Contact; if (contact != null && !string.IsNullOrEmpty(contact.EmailAddress)) { uriQuery.Add(ToQueryItemName, contact.EmailAddress); } var uri = new Uri(ComposeEmailViewName + uriQuery.ToString(), UriKind.Relative); this.regionManager.RequestNavigate(RegionNames.MainContentRegion, uri, nr => { }); }
protected UriQuery GetUriQuery() { UriQuery query = new UriQuery(BaseUrl); query.Add("api_key", ApiKey); query.Add("format", "json"); if (!string.IsNullOrEmpty(SessionId)) { query.Add("session_id", SessionId); } return query; }
public void ChangeView(string regionName, string viewName, params string[] args) { UriQuery query = new UriQuery(); foreach (var item in args) { var splited = item.Split(':'); if (splited.Length > 1) query.Add(splited[0], splited[1]); } regionManager.RequestNavigate(regionName, new Uri(viewName + query.ToString(), System.UriKind.Relative)); }
public void NavigateTo(string region, string view, IDictionary<string, string> parameters) { IRegionManager regionManger = ServiceLocator.Current.GetInstance<IRegionManager>(); var uriQuery = new UriQuery(); foreach (KeyValuePair<string, string> parameter in parameters) { uriQuery.Add(parameter.Key, parameter.Value); } Uri uri = new Uri(view + uriQuery.ToString(), UriKind.Relative); regionManger.RequestNavigate(region, uri); }
public void WhenNavigatedToWithAReplyToQueryParameter_ThenRepliesToTheAppropriateMessage() { var replyToEmail = new EmailDocument { From = "*****@*****.**", To = "", Subject = "", Text = "" }; var emailServiceMock = new Mock<IEmailService>(); emailServiceMock .Setup(svc => svc.GetEmailDocument(replyToEmail.Id)) .Returns(replyToEmail); var viewModel = new ComposeEmailViewModel(emailServiceMock.Object); var uriQuery = new UriQuery(); uriQuery.Add("ReplyTo", replyToEmail.Id.ToString("N")); ((INavigationAware)viewModel).OnNavigatedTo(new NavigationContext(new Mock<IRegionNavigationService>().Object, new Uri("" + uriQuery.ToString(), UriKind.Relative))); Assert.AreEqual("*****@*****.**", viewModel.EmailDocument.To); }
private string CreateNavigationPath(string navItemName) { UriQuery query = new UriQuery(); query.Add(Names.NavKey, navItemName); switch (navItemName) { case Names.NavItem1: return typeof(View1).FullName + query; case Names.NavItem2: return typeof(View2).FullName + query; default: return null; } }
public static void RequestNavigateWithParameters(this IRegionManager regionManager, string regionName, string source, params object[] parameters) { var query = new UriQuery(); var i = 0; foreach (var parameter in parameters) { query.Add(i.ToString(), Serialize(parameter).CompressString()); i++; } regionManager.RequestNavigate(regionName, new Uri(source + query, UriKind.Relative), result => { }); }
public ProcessorQuery(HierarchyQuery query) { if (query != null) { LeftDepth = query.AreaDepth == 0?-1:query.AreaDepth; RemainingElemens = (query.RequiredElemens??new Guid[0]).ToList(); MaxItems = query.MaxItems == 0 ? int.MaxValue : query.MaxItems; if (query.Query!=null) Query = new UriQuery(query.Query); } else { LeftDepth = -1; RemainingElemens = new List<Guid>(); MaxItems = int.MaxValue; } }
public void NavigateToUri(NavigationItem item) { UriQuery query = new UriQuery(); eventAggregator.GetEvent<ProgressChanged>().Publish(ProgressStatus.Start); Shared.SetReceiptNavigation(item); if (item.ReceiptID > 0) { query.Add("BatchType", item.BatchTypeID.ToString()); query.Add("BatchID", item.ReceiptID.ToString()); regionManager.RequestNavigate(Regions.ContentRegion, new Uri("/ReceiptsSummary" + query.ToString(), UriKind.Relative)); } else { query.Add("BatchMonth", item.ReceiptText); regionManager.RequestNavigate(Regions.ContentRegion, new Uri("/ReceiptsBatchSummary" + query.ToString(), UriKind.Relative)); } eventAggregator.GetEvent<ProgressChanged>().Publish(ProgressStatus.Stop); }
/// <summary> /// Navigates the specified region manager. /// </summary> /// <param name="regionManager">The region manager.</param> /// <param name="regionName">Name of the region.</param> /// <param name="viewName">Name of the view.</param> /// <param name="commandName">Name of the command.</param> /// <param name="parameters">The parameters.</param> public void Navigate( IRegionManager regionManager, string regionName, string viewName, string commandName = null, params KeyValuePair<string, string>[] parameters ) { var uriQuery = new UriQuery (); if ( commandName != null ) { uriQuery.Add ( "CommandName", commandName ); } foreach ( var parameter in parameters.Where ( parameter => parameter.Value != null ) ) { uriQuery.Add ( parameter.Key, parameter.Value ); } var uri = new Uri ( viewName + uriQuery, UriKind.Relative ); regionManager.RequestNavigate ( regionName, uri, NavigationCallBack ); }
public static Task<dynamic> ExecuteQuery(dynamic options, UriQuery query) { foreach (string option in options) { if (options[option].HasValue) { if (options[option].Value is IEnumerable<string>) { foreach (var value in ((IEnumerable<string>)options[option].Value)) { query.Add(option, value); } } else { query.Add(option, options[option].ToString()); } } } var client = new HttpClient { Timeout = TimeSpan.FromSeconds(5) }; return client .GetStringAsync(query.ToString()) .ContinueWith(task => { if (task.IsFaulted) { Trace.WriteLine((object)task.Exception); return null; } return JsonConvert.DeserializeObject<dynamic>(task.Result); }); }
/// <summary> /// Build up a Uri string based on the <see cref="NavigationSettings"/> argument, /// assign it a navigation id and store as a key value pair in the navigation settings list. /// Then navigate to that view using the navigation id. /// </summary> /// <param name="navigationSettings"> /// <see cref="NavigationSettings"/> contains information about the target view /// such as the view type, view title, parameters and navigation history. /// </param> public void NavigateDocumentRegion(NavigationSettings navigationSettings) { if (String.IsNullOrEmpty(navigationSettings.View)) { throw new Exception("Navigation Manager Exception : Target view not specified."); } var query = new UriQuery(); query.Add("Title", navigationSettings.Title ?? navigationSettings.View); query.Add("Navigation", navigationSettings.NavigationHistory ?? String.Empty); string partialUri = navigationSettings.View + query.ToString(); navigationSettings.PartialUri = partialUri; var navigationSettingsClone = (NavigationSettings)navigationSettings.Clone(); string navigationId = String.Empty; lock (lockNavigationList) { var existingNavigationSetting = navigationSettingsList.Values.FirstOrDefault( ns => ns.PartialUri.Equals(partialUri) && (ns.Data == null || ns.Data.Equals(navigationSettings.Data))); if (existingNavigationSetting != null) { navigationId = existingNavigationSetting.NavigationId; } else { navigationId = GetNewNavigationSettingsListKey(); query.Add("NavigationId", navigationId); var viewUri = navigationSettings.View + query.ToString(); navigationSettingsClone.NavigationId = navigationId; navigationSettingsClone.ViewUri = viewUri; navigationSettingsList.Add(navigationId, navigationSettingsClone); } } NavigateDocumentRegion(navigationId); }
public IEnumerable<Guid> Query(string name, UriQuery query, string nmspace = "") { Contract.Requires(!string.IsNullOrEmpty(nmspace)); Contract.Requires(!string.IsNullOrEmpty(name)); Contract.Requires(query!=null); Contract.Ensures(Contract.Result<IEnumerable<Guid>>() != null); return null; }
private void OpenMeetingEmail(Meeting meeting) { // todo: 12 - Opening an email // // This view initiates navigation using the RegionManager. // The RegionManager will find the region and delegate the // navigation request to the region specified. // // This navigation request also includes additional navigation context, an 'EmailId', to // allow the Email view to orient to the right item. The navigation request and context // is built using a UriQuery that helps build the request. var builder = new StringBuilder(); builder.Append(EmailViewName); var query = new UriQuery(); query.Add(EmailIdName, meeting.EmailId.ToString(GuidNumericFormatSpecifier)); builder.Append(query); this.regionManager.RequestNavigate(RegionNames.MainContentRegion, new Uri(builder.ToString(), UriKind.Relative)); }