問題タブ [spring4d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - Spring4d - サービス名付きの自動ファクトリー
の自動仮想ファクトリ機能を使用しようとしていますSpring4d
。とはいえ、ファクトリー関数ServiceName
内で解決したいものを渡せるようにしたいです。Build()
そのようです :AFactory.Build(AServiceName)
例えば
TMyComponent1
工場にwhen AServiceName = 'Service1'
、TMyComponent2
whenAServiceName = 'Service2'
などを解決してもらいたいです。
どうすればこれを達成できますか?
delphi-10.1-berlin - DUnitX で spring.Nullable を使用する場合のメモリの問題
最近、私の会社で、私たちが書いたクラスをテストするために、DUnitX を使用しようとしました。これらのクラスはデータベース内のエンティティを反映するため、すべてのフィールドは null 値と特定の型 (整数や文字列など) を受け入れる必要があります。
spring4d にはすでにそれらを使用しようとしたものがあるため、次のようにします。
このコードが実行されると、 AV 例外が発生しFirst chance exception at $00000000. Exception class $C0000005 with message 'access violation at 0x00000000: access of address 0x00000000'. Process Tests.exe (6556)
ます。
System.Rtti
最終的に、この問題をユニット内の関数の移動プロシージャに絞り込みましたTValueDataImpl.ExtractRawDataNoCopy
。Length(FData) が 8 以下の場合、System
ユニット ( FISTP QWORD PTR [EDX+8] {Save Second 8}
) の 5905 行で Length(FData) が 9 ~ 32 の場合、正常に動作します。コール スタック全体が横に消えます。 2行(関連性があるかどうかはわかりませんが、良い兆候のようには見えません)、(コールスタックによると)最上位の関数に到達した後、エラーが発生します.
それは私たちのせいですか、それともシステム/スプリング/dunitx ユニットの問題ですか? null 許容型とテストを同時に使用するにはどうすればよいですか?
delphi - Spring4D の最新版は DSharp と互換性がありませんか?
このリンクhttps://bitbucket.org/sglienke/spring4d/downloads/から Spring4D "sglienke-spring4d-ca8037a2fdec.zip" をダウンロードしました。
そして、このリンクから DSharp "sglienke-dsharp-2eae62962442.zip" をダウンロードしましたhttps://bitbucket.org/sglienke/dsharp/downloads/
Tokyo 10.2.3 を使用して DSharp をビルドしようとしましたが、次のエラーが発生しました - DSharp は最新の Spring4D コミットと互換性がないようですか?
[dcc32 エラー] DSharp.Collections.Iterators.pas(54): E2170 非仮想メソッドをオーバーライドできません
[dcc32 エラー] DSharp.Collections.Iterators.pas(66): E2170 非仮想メソッドをオーバーライドできません
[dcc32 エラー] DSharp.Collections.Iterators.pas(129): E2003 宣言されていない識別子: 'fState'
[dcc32 エラー] DSharp.Collections.Iterators.pas(147): E2003 宣言されていない識別子: 'fState'
[dcc32 エラー] DSharp.Collections.Iterators.pas(148): E2003 宣言されていない識別子: 'STATE_ENUMERATOR'
[dcc32 エラー] DSharp.Collections.Iterators.pas(149): E2003 宣言されていない識別子: 'STATE_RUNNING'
[dcc32 エラー] DSharp.Collections.Iterators.pas(149): E2030 ケース ラベルが重複しています
[dcc32 エラー] DSharp.Collections.Iterators.pas(156): E2003 宣言されていない識別子: 'fCurrent'
[dcc32 エラー] DSharp.Collections.Iterators.pas(160): E2003 宣言されていない識別子: 'STATE_FINISHED'
[dcc32 エラー] DSharp.Collections.Iterators.pas(173): E2003 宣言されていない識別子: 'fState'
[dcc32 Fatal Error] DSharp.Core.dpk(38): F2063 Could not compile used unit 'DSharp.Collections.Iterators.pas'
失敗 経過時間: 00:00:00.8
delphi - 型のコンストラクタが満たされていません
Spring4D の Dependency Injection Framework をいじってみましょう。
現時点では、DynamicAbstractFactories を使用しようとしています。テストには 2 つのクラスとファクトリが
IOrderShipper
あります。IOrderShipperFactory
動作し、
IDocument
失敗IDocumentFactory
します。
プロシージャTestDocumentのコードは発生します
タイプのコンストラクターが満たされていません: DynamicAbstractFactory.TDocument
理由がわかりません....誰かが理由を知っていることを願っています、私は本当に愚かだと感じています