小编Ish*_*war的帖子

如何在c#中将字符串FIXMessage解析为FIXMessage对象

我有字符串FIX消息作为输入,我想将其转换为FIX消息.我正在使用QuickFix 1.13.3(我从quickfix网站几天后回来了)

我是QuickFix的新手.谷歌返回的大多数示例代码/帮助都是针对Java的,当应用程序将FIXMessage有效负载作为字符串时,也没有提出直接的方法.

我在网上看到的大多数样本都是人们使用QuickFix进行端到端的情况,即通过套接字进行通信以获取消息并破解它.

在我的情况下,我有自己的通信层,它只是给我一个字符串有效负载代表一个完整的fledge FIX消息.我只需要解析字符串并获取所有标记/值的列表.

虽然我自己编写了一个小实用程序来解析使用标准string.split()的FIX消息....但有人建议我使用QuickFix,因为它支持所有内容.

但是我很难在QuickFix上开始一个非常基本的任务,所以任何帮助重新解析字符串有效负载都将非常感激.

以下是我要找的内容

//转换器或饼干

public QuickFix44.Message GetMessage(string payload);
Run Code Online (Sandbox Code Playgroud)

//呼叫者

string newOrderSinglePayload = "8=FIX.4.49=13635=D..............";

QuickFix44:Message message = GetMessage(newOrderSinglePayload);

if (message is QuickFix44.NewOrderSingle)

{ 
   //I am happy
}
Run Code Online (Sandbox Code Playgroud)

如果QuickFix对于这个简单的工作太多了,那么我可以使用任何其他工具(免费和开源)

quickfix

5
推荐指数
1
解决办法
1万
查看次数

在 SwiftUI 中,每当列表的底层数据源从层次结构中较远的视图更新时,就会触发列表视图刷新

我正在尝试在 SwiftUI 中编写一个“单视图应用程序”。主要设计非常简单。我有一个项目列表(例如费用),我在导航视图 - >列表的主视图中显示它。

列表查看源代码

    import SwiftUI

struct AmountBasedModifier : ViewModifier{
    var amount: Int
    func body(content: Content) -> some View {
        if amount <= 10{
            return content.foregroundColor(Color.green)
        }
        else if amount <= 100{
            return content.foregroundColor(Color.blue)
        }
        else {
            return content.foregroundColor(Color.red)
            
        }
    }
}

extension View {
    
    func amountBasedStyle(amount: Int) -> some View {
        self.modifier(AmountBasedModifier(amount: amount))
    }
}

struct ExpenseItem: Identifiable, Codable {
    var id = UUID()
    var name: String
    var type: String
    var amount: Int
    
    static var Empty: ExpenseItem{ …
Run Code Online (Sandbox Code Playgroud)

swiftui swiftui-list

5
推荐指数
0
解决办法
398
查看次数

什么是为 SwiftUI 应用程序设计类的正确架构

我对 SwiftUI 中的应用程序开发有点陌生。在过去的 2-3 个月里,我开发了一些小的 iOS 应用程序只是为了学习概念。否则,我是 C#、Java 等方面经验丰富的开发人员。

我对 SwiftUI 不太确定的一件事是围绕为项目开发类的正确架构集。我的意思是可能有几种方法

  1. 我们编写模型类来表示我们的应用程序需要保存的数据。在纯粹的形式中,模型类应该只关心数据,我的意思是模型类应该只保存反映数据的属性。

假设我正在编写一个库存管理应用程序,所以如果模型之一是商品,那么它的属性可以是 Id、名称、价格、条形码等。在我看来,模型类不应该像 @Published、@ObservableObject 这样关心 View, @State、@EnvironmentObject 等等等等。模型应该只坚持代表域。正确的?

理想情况下,模型类应该写为 Class 而不是 Struct(如果我将我对 OOPS 的理解从 C++ 延续到 Java/C#,在那里我们编写类而不是结构)

  1. 我们需要第二组类是视图,即继承自 View。毫无疑问,这些必须是 Struct,因为 SwiftUI 框架以这种方式工作。

现在在模型类(假设它们是类,或者为了 SwiftUI 框架,我们最多将它们设为 Struct)和 View 类之间,必须进行大量通信、状态更改、事件处理,以使应用程序值得做一些事情。我的意思是处理用户手势,创建和编辑数据,当用户在 UI 之间来回导航时,这些数据应该更新屏幕。

我发现将模型(如果它们以纯粹的形式开发)和视图连接起来并不困难。从某种意义上说,当我开始编写视图并寻求实现涉及数据编辑、反映视图更改等的用例时,我发现纯模型类是不够的。它们必须进行修改以反映 SwiftUI 功能,如绑定、可观察性、发布以在视图和模型之间以及两个模型之间同步数据。

想知道在模型和视图之间连接和通信的正确设计模式是什么?MVVM 是在基于 SwiftUI 的项目中使用的正确设计模式吗?如果不是那么还有什么是正确的模式?

如果 MVVM 是正确的模式,那么是否有任何质量指南或资源或示例 SwiftUI 项目(gitHub??)我可以查看和学习?

mvvm swift swiftui

3
推荐指数
1
解决办法
1327
查看次数

标签 统计

swiftui ×2

mvvm ×1

quickfix ×1

swift ×1

swiftui-list ×1