解决方案中从一个项目到另一个项目的数据传输

Posted

技术标签:

【中文标题】解决方案中从一个项目到另一个项目的数据传输【英文标题】:Data transfer from one to project to another in a Solution 【发布时间】:2021-08-19 06:52:44 【问题描述】:

我有一个包含多个项目的 C# 解决方案。

有一个名为 Console 的项目作为服务运行,该项目引用了 hostSoftware 项目(hostSoftware 没有显然有对 Console 的引用)。

我想将 bool 值从 Console 传输到 hostSoftware

控制台:检查许可证,我想将 bool 值发送到 hostSoftware 以进行进一步检查。

var StatusParameters1 = new StatusParameters();

    StatusParameters1.Name = "Log";
    int returnCode = 0;
    bool logStatus = LHandler.GetLogStatus(out LogStatus);
    var status = LHandler.ReadLFile(out returnCode);
    if (logStatus)
    
        if (status.SoftLisenceInfoList[0].SoftId2 == Constants.SoftwareId2)
        
            StatusParameters1.Value = LogStatus;
        
        else 
        
            StatusParameters1.Value = false;
        

hostSoftware:我想在我的宿主项目MainWindow.xaml.cs 文件中添加StatusParameters1.Value

注意:我尝试使用委托但收到此错误:

在 MainWindow 类型上找不到匹配的构造函数

还有其他方法吗?

编辑: 我刚刚发现还有另一个名为ServerService 的项目与控制台项目通信,hostSoftware 正在与ServerService 通信,因此数据流为:Console -> ServerService -> hostSoftware

ServerService 是在hostSoftware 中用作Service References 的服务

【问题讨论】:

请注意,构建一个 new MainWindow 无论如何都对您没有帮助,因为它与您已经打开的 MainWindow 不同。 好的,谢谢!那么什么方法是合法的呢? 听起来像hostSoftware 调用Console(通过HTTP 或其他方式)- 对吗? Full Duplex Named Pipes | Inter Process Com | WCF Comparison with Web Services and Remoting | Socket | Socket | Client-server @Llama 不,它正在通过线程进行通信 【参考方案1】:

我可以理解您希望您的服务验证客户端,然后客户端可以调用您的服务。如果有,可以参考Extending WCF,您可以选择合适的方式为您的服务添加安全验证。

【讨论】:

问题写得不好,但是根据作者上面的cmets和问题的字面阅读,似乎很清楚,虽然代码在不同的项目中,但它仍然在同一个过程。 WCF 或其他进程间通信 API 不适用于此处。

以上是关于解决方案中从一个项目到另一个项目的数据传输的主要内容,如果未能解决你的问题,请参考以下文章

在 OrderedDict 中从一个键迭代到另一个键

如何在 ASP.NET MVC 3 的一个解决方案中从另一个项目获取文件路径?

如何在 iPhone 中从一个 Tabbarview 控制器切换到另一个 TabbarViewController?

我们如何在 GWT 中从一页导航到另一页

对象引用未设置为在单独项目中从 DAL 抛出的对象的实例

如何通过单击按钮在 Swift UI 中从一个视图导航到另一个视图