我有一个包含三个项目的解决方案, BackgroundTasks ,这是一个 Windows运行时项目, SecondaryProject ,这是一个类库和 MainProject ,它也是类库。 BackgroundTasks 负责接收 PushNotifications ,因此它由系统注册。我知道如果 BackgroundTasks 和 SecondarPyroject 之间没有任何关联,当收到通知时, SecondaryProject 不存在,因为那里没有什么可以创建它的实例,因为没有应用程序的实例。
现在出现了棘手的问题,我的想法是当我收到 PushNotification 时我想过滤它,所以我想做的就是将它以某种方式传递给 SecondaryProject ,因此它可以验证通知信息并返回int
或string
之类的值,具体取决于结果。这里的问题是我无法添加 SecondaryProject 作为 BackgroundTasks 的引用,因为该项目已在 MainProject 中引用,并且具有公共方法我不想使用 BackgroundTasks 项目。
我已经使用接口和抽象类进行了测试,但问题是我的 BackgroundTasks 是 Windows运行时项目,所以我非常有限使用接口。
总之,我怎么能有三个项目( A , B 和 C ),其中 C 引用 B 而 A 无法引用 B ,因为其中的公共方法只能用于 C ,将某些内容从 A 传递到 B ,然后再从 B 传递到 A ?