static void RunFileWatcherTB() { // Serviceサーバーを起動して、クライアントにWSDLなどを公開するためのコンソールプログラムです。 System.Threading.Thread.CurrentThread.Name = "Nadesico API"; application = new Application(); var buildAssemblyType = new BuildAssemblyParameter(); buildAssemblyType.Params["ApplicationDirectoryPath"] = @"\Nadesico_InvokeServiceConsole"; ApplicationContext.SetupApplicationContextImpl(ApplicationContextImpl.CreateInstance(application, buildAssemblyType)); ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplication(); var invoker = new FileWatcherTBInvoker(); invoker.Run(); bool isEnd = false; do { var command = Console.ReadLine(); switch (command) { case "d": invoker.OutputDump(); break; default: isEnd = true; break; } } while (!isEnd); }
static void RunContentTB1() { System.Threading.Thread.CurrentThread.Name = "Nadesico API"; application = new Application(); var buildAssemblyType = new BuildAssemblyParameter(); buildAssemblyType.Params["ApplicationDirectoryPath"] = @"\Nadesico_InvokeServiceConsole"; ApplicationContext.SetupApplicationContextImpl(ApplicationContextImpl.CreateInstance(application, buildAssemblyType)); ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplication(); using (var dbc = new AppDbContext()) { var content = new ContentImage(); content.IdentifyKey = "aaaa"; content.Title = "コンテントテストA"; content.ArchiveFlag = true; content.ReadableFlag = true; content.Starrating = 3; content.UnsetStarratingFlag = false; var repoContent = new ContentImageRepository(dbc); repoContent.Add(content); dbc.SaveChanges(); } Console.WriteLine("永続化が完了しました。"); }
static void Main(string[] args) { Console.WriteLine("サーバーシステム・プログラム:"); while (1 == 1) { Console.WriteLine("起動モードを選択してください"); Console.WriteLine(" 0: APIサーバ起動"); Console.Write("> "); string d = Console.ReadLine(); if (d == "0") { break; } } // Serviceサーバーを起動して、クライアントにWSDLなどを公開するためのコンソールプログラムです。 System.Threading.Thread.CurrentThread.Name = "Halcyon API"; application = new Application(); var buildAssemblyType = new BuildAssemblyParameter(); buildAssemblyType.Params["ApplicationDirectoryPath"] = @"\Mogami_InvokeServiceConsole"; ApplicationContext.SetupApplicationContextImpl(ApplicationContextImpl.CreateInstance(application, buildAssemblyType)); ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplication(); RunApiService(); }
static void RunCategoryTB1() { System.Threading.Thread.CurrentThread.Name = "Nadesico API"; application = new Application(); var buildAssemblyType = new BuildAssemblyParameter(); buildAssemblyType.Params["ApplicationDirectoryPath"] = @"\Nadesico_InvokeServiceConsole"; ApplicationContext.SetupApplicationContextImpl(ApplicationContextImpl.CreateInstance(application, buildAssemblyType)); ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplication(); long id_child; using (var dbc = new AppDbContext()) { var repoCategory = new CategoryRepository(dbc); var catRoot = repoCategory.Load(1L); var catNew = new Category { Name = "新しいカテゴリ", Memo = "新しいメモ", Comment = "コメント", CreateDate = DateTime.Now, LastUpDate = DateTime.Now, SortType = CategorySortType.MANUAL, }; repoCategory.Add(catNew); dbc.SaveChanges(); id_child = catNew.Id; catRoot.ChildCategories.Add(catNew); dbc.SaveChanges(); Console.WriteLine("ROOTカテゴリの子階層({0})に、新しいカテゴリを追加しました。", id_child); } // 保存した子階層カテゴリを参照 using (var dbc = new AppDbContext()) { var repoCategory = new CategoryRepository(dbc); var catRoot = repoCategory.Load(1L); Console.WriteLine("ROOTカテゴリの子階層カテゴリのID({0})を確認", catRoot.ChildCategories[0].Id); } // 子階層カテゴリから、親階層カテゴリ(ID=1)の参照 using (var dbc = new AppDbContext()) { var repoCategory = new CategoryRepository(dbc); var catChild = repoCategory.Load(id_child); Console.WriteLine("子階層カテゴリの親カテゴリ({0})を確認", catChild.ParentCategory.Id); } }
public void BeforeTest(ITest testDetails) { lock (this) { LOG.Info("UsingDatabaseAction::BeforeTest"); string personalDirectoryPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal); Console.WriteLine("Dir={0}", personalDirectoryPath); if (application == null) { application = new Application(); } var buildAssemblyType = new BuildAssemblyParameter(); buildAssemblyType.Params["ApplicationDirectoryPath"] = @"\Mogami.CT.xUnit"; ApplicationContext.SetupApplicationContextImpl(ApplicationContextImpl.CreateInstance(application, buildAssemblyType)); var task = Task.Factory.StartNew(() => { LOG.Info("アプリケーションの初期化を開始します。"); this.InitializeApplicationCompleteFlag = false; ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).RemoveUnitDbFile(); // DBファイルが削除できないこともある //((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplicationProgressEvent += UsingDatabaseActionAttribute_InitializeApplicationProgressEvent; ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplication(); DeleteAllData("App"); DeleteAllData("Thumbnail"); ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).Initialize(InitializeParamType.DATABASE); LOG.Info("アプリケーションの初期化が終了しました。"); }); task.Wait(); LOG.Info("データベースの初期化を完了しました。"); if (ImportInitializeDataFlag) { ImportInitializeData(); if (!string.IsNullOrEmpty(ImportSqlFileName)) { ImportSqlFile(); } } } Console.WriteLine("BeforeTest"); }
static void RunServiceTB1() { // Serviceサーバーを起動して、クライアントにWSDLなどを公開するためのコンソールプログラムです。 System.Threading.Thread.CurrentThread.Name = "Nadesico API"; application = new Application(); var buildAssemblyType = new BuildAssemblyParameter(); buildAssemblyType.Params["ApplicationDirectoryPath"] = @"\Nadesico_InvokeServiceConsole"; ApplicationContext.SetupApplicationContextImpl(ApplicationContextImpl.CreateInstance(application, buildAssemblyType)); ((ApplicationContextImpl)ApplicationContextImpl.GetInstance()).InitializeApplication(); using (ServiceHost host = new ServiceHost(typeof(ApplicationInterfaceService))) { // ① エンドポイントの手動構成設定 (C/B/A を指定) // バインディングの構成設定を行いたい場合には、Binding インスタンスのプロパティを設定する var binder = new NetNamedPipeBinding(); binder.MaxBufferSize = 1073741824; binder.MaxBufferPoolSize = 1073741824; binder.MaxReceivedMessageSize = 1073741824; binder.ReaderQuotas.MaxArrayLength = 1073741824; host.AddServiceEndpoint(typeof(IApplicationInterfaceService), binder, "net.pipe://localhost/Nadesico.Server/Application"); // ② ビヘイビアの手動構成設定 // すでにいくつかのビヘイビアは既定で追加されているため、取り払ってから再設定する host.Description.Behaviors.Remove(typeof(ServiceDebugBehavior)); host.Description.Behaviors.Remove(typeof(ServiceMetadataBehavior)); host.Description.Behaviors.Add(new ServiceDebugBehavior { IncludeExceptionDetailInFaults = true }); host.Description.Behaviors.Add(new ServiceMetadataBehavior { HttpGetEnabled = true, HttpGetUrl = new Uri("http://localhost:8001/Nadesico.Server/Application/mex") }); // ホストのオープン host.Open(); Console.WriteLine("WCF サービスを起動しました。"); Console.ReadLine(); host.Close(); } }