public ActionResult CallWCFService() { PlaylistServiceClient client = new PlaylistServiceClient(); PlaylistModel[] playlistArray = client.GetAllPlayLists(); return(View(playlistArray)); }
public async Task <ActionResult> CallWCFServiceAsync() { PlaylistServiceClient client = new PlaylistServiceClient(); PlaylistModel[] playlistArray = await client.GetAllPlayListsAsync(); return(View(playlistArray)); }
public async Task <ActionResult> CallWCFWithWaitAllAsync() { PlaylistServiceClient client = new PlaylistServiceClient(); Task <PlaylistModel> task1 = client.GetPlayListAsync(1); Task <PlaylistModel> task2 = client.GetPlayListAsync(2); Task <PlaylistModel> task3 = client.GetPlayListAsync(3); PlaylistModel[] playlistArray = await Task.WhenAll(new Task <PlaylistModel>[] { task1, task2, task3 }); return(View(playlistArray)); }
public static PlaylistServiceClient GetPlaylistServiceClient() { if (_playlistServiceClient != null && _playlistServiceClient.State == CommunicationState.Faulted) { RecreateAllChannels(); } if (_playlistServiceClient == null) _playlistServiceClient = new PlaylistServiceClient(_defaultBinding, new EndpointAddress(Host + "Playlist")); return _playlistServiceClient; }
public static PlaylistServiceClient GetPlaylistServiceClient() { if (_playlistServiceClient != null && _playlistServiceClient.State == CommunicationState.Faulted) { RecreateAllChannels(); } if (_playlistServiceClient == null) { _playlistServiceClient = new PlaylistServiceClient(_defaultBinding, new EndpointAddress(Host + "Playlist")); } return(_playlistServiceClient); }
/// <summary> /// Убивает все коммуникационные объекты и создает новые. /// </summary> public static void RecreateAllChannels() { KillChannel(_searchServiceClient); KillChannel(_playlistServiceClient); KillChannel(_playerServiceClient); KillChannel(_userServiceClient); _searchServiceClient = null; _playlistServiceClient = null; _playerServiceClient = null; _userServiceClient = null; if (ChannelsWereChanged != null) { ChannelsWereChanged(null, null); } }
public static void Open(string host) { CustomBinding binding = new CustomBinding( new BinaryMessageEncodingBindingElement(), new TcpTransportBindingElement()); SearchService = new SearchServiceClient(binding, new EndpointAddress(host + "Search")); PlaylistService = new PlaylistServiceClient(binding, new EndpointAddress(host + "Playlist")); PlayerService = new PlayerServiceClient(binding, new EndpointAddress(host + "Player")); pOpenedServices = 0; SearchService.OpenCompleted += OnServiceOpenCompleted; PlaylistService.OpenCompleted += OnServiceOpenCompleted; PlayerService.OpenCompleted += OnServiceOpenCompleted; SearchService.OpenAsync(); PlaylistService.OpenAsync(); PlayerService.OpenAsync(); }
/// <summary> /// Убивает все коммуникационные объекты и создает новые. /// </summary> public static void RecreateAllChannels() { KillChannel(_searchServiceClient); KillChannel(_playlistServiceClient); KillChannel(_playerServiceClient); KillChannel(_userServiceClient); _searchServiceClient = null; _playlistServiceClient = null; _playerServiceClient = null; _userServiceClient = null; if (ChannelsWereChanged != null) ChannelsWereChanged(null, null); }