当前位置: 首页>>代码示例>>C#>>正文


C# ApiClient.ShareDeck方法代码示例

本文整理汇总了C#中ApiClient.ShareDeck方法的典型用法代码示例。如果您正苦于以下问题:C# ApiClient.ShareDeck方法的具体用法?C# ApiClient.ShareDeck怎么用?C# ApiClient.ShareDeck使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ApiClient的用法示例。


在下文中一共展示了ApiClient.ShareDeck方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Share

        public static string Share(this IDeck deck, string name)
        {
            try
            {
                var tempFile = Path.GetTempFileName();
                var game = GameManager.Get().GetById(deck.GameId);
                deck.Save(game,tempFile);

                var client = new ApiClient();
                if (!Program.LobbyClient.IsConnected) throw new UserMessageException("You must be logged in to share a deck.");
                if (string.IsNullOrWhiteSpace(name)) throw new UserMessageException("The deck name can't be blank.");
                if (name.Length > 32) throw new UserMessageException("The deck name is too long.");
                var result = client.ShareDeck(Program.LobbyClient.Username, Program.LobbyClient.Password, name, tempFile);
                if (result.Error)
                {
                    throw new UserMessageException(result.Message);
                }
                return result.DeckPath;
            }
            catch (Exception)
            {
                throw new UserMessageException("There was an error sharing your deck. 0xFFFF");
            }
        }
开发者ID:rexperalta,项目名称:OCTGN,代码行数:24,代码来源:DeckExtensionMethods.cs

示例2: shareDeck

        private void shareDeck()
        {
            try
            {
                Log.Info("Start");
                ErrorText = "";
                ShareUrl = "";
                EnableInput = false;
                ShowProgressBar = true;

                // Do work here.
                var tempFile = Path.GetTempFileName();
                var game = GameManager.Get().GetById(Deck.GameId);
                Deck.Save(game, tempFile);

                var client = new ApiClient();
                if (!Program.LobbyClient.IsConnected) throw new UserMessageException("You must be logged into OCTGN to share a deck.");
                if (string.IsNullOrWhiteSpace(DeckName)) throw new UserMessageException("The deck name can't be blank.");
                if (DeckName.Length > 32) throw new UserMessageException("The deck name is too long.");
                var result = client.ShareDeck(Program.LobbyClient.Username, Program.LobbyClient.Password, DeckName, tempFile);
                if (result.Error)
                {
                    throw new UserMessageException(result.Message);
                }
                Messenger.Default.Send(new RefreshSharedDecksMessage());
                var path = result.DeckPath;
                ShareUrl = path;
                ErrorText = "";
            }
            catch (UserMessageException e)
            {
                ErrorText = e.Message;
                ShareUrl = "";
                Log.Warn("Error sharing deck", e);
            }
            catch (Exception e)
            {
                ErrorText = "Something unexpected happened. Please try again in a little bit.";
                ShareUrl = "";
                Log.Warn("Error sharing deck", e);
            }
            finally
            {
                EnableInput = true;
                ShowProgressBar = false;
                Log.Info("Finished");
            }
        }
开发者ID:octgn,项目名称:OCTGN,代码行数:48,代码来源:ShareDeck.xaml.cs


注:本文中的ApiClient.ShareDeck方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。