From 3d6e2f02b432b3a75afcbd7869a6f762bd04085b Mon Sep 17 00:00:00 2001
From: MSuMshk <2039814060@qq.com>
Date: Sat, 27 Dec 2025 11:04:11 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E5=8D=87=E7=BA=A7=E4=BE=9D=E8=B5=96?=
=?UTF-8?q?=E5=B9=B6=E9=80=82=E9=85=8D=E6=B6=88=E6=81=AF=E6=A8=A1=E5=9D=97?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../TakeoutSaaS.AdminApi.csproj | 6 +--
.../TakeoutSaaS.MiniApi.csproj | Bin 2293 -> 4588 bytes
.../TakeoutSaaS.UserApi.csproj | Bin 3434 -> 3434 bytes
.../TakeoutSaaS.Application.csproj | Bin 1359 -> 2924 bytes
.../TakeoutSaaS.Shared.Abstractions.csproj | 3 ++
.../TakeoutSaaS.Shared.Kernel.csproj | 3 ++
.../TakeoutSaaS.Shared.Web.csproj | 14 ++++---
.../TakeoutSaaS.Domain.csproj | 3 ++
.../TakeoutSaaS.ApiGateway.csproj | Bin 1924 -> 2130 bytes
.../TakeoutSaaS.Infrastructure.csproj | Bin 3974 -> 4616 bytes
.../TakeoutSaaS.Module.Authorization.csproj | Bin 1254 -> 1460 bytes
.../TakeoutSaaS.Module.Delivery.csproj | 3 ++
.../TakeoutSaaS.Module.Dictionary.csproj | 3 ++
.../Services/RabbitMqConnectionFactory.cs | 4 +-
.../Services/RabbitMqMessagePublisher.cs | 31 ++++++++++-----
.../Services/RabbitMqMessageSubscriber.cs | 36 ++++++++++--------
.../TakeoutSaaS.Module.Messaging.csproj | 17 +++++----
.../TakeoutSaaS.Module.Scheduler.csproj | 15 +++++---
.../TakeoutSaaS.Module.Sms.csproj | 17 +++++----
.../TakeoutSaaS.Module.Storage.csproj | Bin 2130 -> 2336 bytes
.../TakeoutSaaS.Module.Tenancy.csproj | 3 ++
.../TakeoutSaaS.Application.Tests.csproj | 13 +++++--
.../TakeoutSaaS.Integration.Tests.csproj | 17 ++++++---
23 files changed, 124 insertions(+), 64 deletions(-)
diff --git a/src/Api/TakeoutSaaS.AdminApi/TakeoutSaaS.AdminApi.csproj b/src/Api/TakeoutSaaS.AdminApi/TakeoutSaaS.AdminApi.csproj
index a92defc..59d35a0 100644
--- a/src/Api/TakeoutSaaS.AdminApi/TakeoutSaaS.AdminApi.csproj
+++ b/src/Api/TakeoutSaaS.AdminApi/TakeoutSaaS.AdminApi.csproj
@@ -9,9 +9,9 @@
../../..
-
+
-
+
@@ -20,7 +20,7 @@
-
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
diff --git a/src/Api/TakeoutSaaS.MiniApi/TakeoutSaaS.MiniApi.csproj b/src/Api/TakeoutSaaS.MiniApi/TakeoutSaaS.MiniApi.csproj
index 1fd145f97ccb6bebd8f7f74bdd4b92d2a8cc3425..22d02129478fcd3c292f68dda33b37c4bd976ee6 100644
GIT binary patch
literal 4588
zcmdUyUsKvp5XJY|nSKYR@5btM`b2e{7XM5~>jq9#suxn~>+;7>%U-XDQ1Ay@xTyc^_0wV-|H@qY4D7s)fQ
zNiPy7L)f(Qm-l(!^n1%HJ>@xUI)`N*pSV_?tf*$ku0yM*Oo&-AO26AANNY+NR2qf&
zqWYGf)sDB1s_&y$_?qJNs@-Rn`+3jLxv!a_d=^-AR+ybV7n>CVP__B$npJb#&4f3g
z9)UYyo(TCgk!dnhXj+We3$tl;Iq3kFY6|h57VqTGL$c2sviUOK%Zoi-kNnGEJ0UAw
z@}dfg$(rW(dAXXE3+%*6$H?~S=GyaD*Q_$mCR4-WQSs8%#-q-zvy9Gki{`9J)#h4N
z#;1u@r^lh2s~5$0U+ZP?X)^7(Ol0$^PWY+ohQ)rbU+Z6^&31#?{h%1%{T<;G*_;q3
ZokH3rY%SJ$3SIeLnV-J1)0xgze*no=|49G<
literal 2293
zcmcIlO>f#j5WPprf3SSdf}^S@Llh;DSQRviX?o$Z*aNt%cdgyo2L63#apJ_5p%l3i
zlBJp9y_q*38{TYl;r#|}G9?Fo!1}%iGEr$JR|DVT@+$c1-wZD=FTy9SenEm>oNfmG
zBulh1YKd$*nlUo5pRn*v!KkD
zn(o?uu<-8$I0FGWpx&_$F!rbnQtLj0vfzsw!c#J@!$#6jAFIY55T-NuN5ta4mcHMNQg>Dlm|0>90%S>V=F`Ve7omt
Gc<~34`~6G+
diff --git a/src/Api/TakeoutSaaS.UserApi/TakeoutSaaS.UserApi.csproj b/src/Api/TakeoutSaaS.UserApi/TakeoutSaaS.UserApi.csproj
index 2a318505dc9dbe42de413defa0a61adf1ca5073f..ed59abd3b0db16a1be14c9f166242c2eace42caa 100644
GIT binary patch
delta 18
ZcmaDQ^-5}k5Hq9UWI+!9%}LB0TmU=x1tkCg
delta 22
dcmaDQ^-5}k5HqU*gC2w7vRzrq2>L3U2Q$U|+m2oO6Z|zR*75Xn=?wcV^wDXJVr{EqWXcafV}D@ae3!IKxZ+UeGUim}_iN
z75ITu^PXZnXXk7$5OcIo+X5$iiDkFeOR@
zdR_CLa!z65zck~b#h-Ju7}c2GLgJS3TpHTKGq0F$xpg_W)^@l*hE)?Su9`B6Wmujw
ztAwbp1HTIXAL4*W=6qMR
z#1_Z9-1zpHUh`ahO^;oxp7^+J9B@qWZ231)AG05XQD(JKC*)kUWtnCcrMMVAWTa>o
zqxDP+$+`a#@1bFOLrlf4b+N9Besio-Q;(P!c4}(ez#FTuR~=P(({)dbr>bYcI>pv~
zT|PbELL9N$>YVJp#tG{yhIJ8&o^ftf
z=|ffD`_ZbgQeAv^&FcDUnh-LUD_**{Ep{nr%6_^s^}XZ!h#FE*|6~3lTF%;OUl^`!
z9a2lAJ1$<2#Pi6fZQ19{wSV84t0J-J`JD5NSX1r1ZUZtLL#`dx6e*CaHvapPQDn=84F^sE
z0Rm^q+2L@=?Bcaj(I2!<8a<3t7{n23ZiLi}VcgLCYx*O;$g_KEej}%-6w6^emfRX=
z<^+@L8F(np&(6L?QJ7VurPZx9P2FN1oiV#Wy0NUnzs4?ejg$^xkR`i?Hxj>K(kR8A
z73QeJFH6=yH>0R(CAp*r=XJXEydAg|mF!WK6@=Bc%6rC_Y=KjpqxBA8RA{amf&J}X
zx_W{%G8W;EsD{gDN0xE&-nlq>>|8vDZ^6eT52gfLK0tl_N~psjI4A^alC*-*s7D)2
z`wZ`h@fUB`A=MlDqpDFzM$^8u@13+`Yj0HJclXGY6fF1#S6HL=JLaoGhlqJ><3+#4
zIi!#VSC6&$H60m&w!apBw#NCTS+Y6%Fx-r~aJ^@JPZ9v0{5LkDQRtp#Y>B3!lCct6
z49e;d4BXZJ4!xzKi$!~(DuqyOzJJ-gU~L0KR`Y*S$JPUaKn4|54}^tHUIzs
diff --git a/src/Core/TakeoutSaaS.Shared.Abstractions/TakeoutSaaS.Shared.Abstractions.csproj b/src/Core/TakeoutSaaS.Shared.Abstractions/TakeoutSaaS.Shared.Abstractions.csproj
index 2de50de..43219c2 100644
--- a/src/Core/TakeoutSaaS.Shared.Abstractions/TakeoutSaaS.Shared.Abstractions.csproj
+++ b/src/Core/TakeoutSaaS.Shared.Abstractions/TakeoutSaaS.Shared.Abstractions.csproj
@@ -6,5 +6,8 @@
true
1591
+
+
+
diff --git a/src/Core/TakeoutSaaS.Shared.Kernel/TakeoutSaaS.Shared.Kernel.csproj b/src/Core/TakeoutSaaS.Shared.Kernel/TakeoutSaaS.Shared.Kernel.csproj
index c52f050..db63687 100644
--- a/src/Core/TakeoutSaaS.Shared.Kernel/TakeoutSaaS.Shared.Kernel.csproj
+++ b/src/Core/TakeoutSaaS.Shared.Kernel/TakeoutSaaS.Shared.Kernel.csproj
@@ -7,5 +7,8 @@
+
+
+
diff --git a/src/Core/TakeoutSaaS.Shared.Web/TakeoutSaaS.Shared.Web.csproj b/src/Core/TakeoutSaaS.Shared.Web/TakeoutSaaS.Shared.Web.csproj
index ab9c720..f7a4f0e 100644
--- a/src/Core/TakeoutSaaS.Shared.Web/TakeoutSaaS.Shared.Web.csproj
+++ b/src/Core/TakeoutSaaS.Shared.Web/TakeoutSaaS.Shared.Web.csproj
@@ -11,14 +11,18 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/src/Domain/TakeoutSaaS.Domain/TakeoutSaaS.Domain.csproj b/src/Domain/TakeoutSaaS.Domain/TakeoutSaaS.Domain.csproj
index 3f9021d..fc99d63 100644
--- a/src/Domain/TakeoutSaaS.Domain/TakeoutSaaS.Domain.csproj
+++ b/src/Domain/TakeoutSaaS.Domain/TakeoutSaaS.Domain.csproj
@@ -9,5 +9,8 @@
+
+
+
diff --git a/src/Gateway/TakeoutSaaS.ApiGateway/TakeoutSaaS.ApiGateway.csproj b/src/Gateway/TakeoutSaaS.ApiGateway/TakeoutSaaS.ApiGateway.csproj
index 11ed7b88080d007d17631dfd7ed72a63a28ec0fc..207e70312c191ac92f77e62c7f21fdb09c6e57e8 100644
GIT binary patch
delta 77
zcmZqSza+3BgMIP~MlbzPh608ZhD3%EhExVy1|^1IhDwHFFfW%ukHM3{A4moO<&zn*
Wfn@q*M`n3W1E3fP8&0-n_XGgS#Sj(%
delta 11
Scmca4(89kVgMG3YhYSE2N&|ub
diff --git a/src/Infrastructure/TakeoutSaaS.Infrastructure/TakeoutSaaS.Infrastructure.csproj b/src/Infrastructure/TakeoutSaaS.Infrastructure/TakeoutSaaS.Infrastructure.csproj
index 06ca75d906ea812ad41ade7ca5aed0e6d11ff50b..931f2ccfa3441a5b23fff5f0dd880731e4dfd0e2 100644
GIT binary patch
delta 385
zcmZpZ?@-y0!^CJhc_Op_K9e6X7cd%b4rIw>WHw|_
znk>jBy7>}o6%$x)28Rx-DOg7~Q{ZMPPCiDc7LmyvTxn3Y*yI527)Ha%j{LflA24c7
zKEPwQ*@;Jo8OZTc4P_``NMT51C}Butuw_tU@CCAqfiQ%j2*}CLpsQu$s1U?zyab40PagydH?_b
delta 109
zcmeBBX_McO!^CJbc_Op_nk>jB
zy7>}o6%$Bw@(d0gc4G!T215p;$+=Aao25AU7=aQAlRLQ5fOOL20PYwdEwp(b_Xg(4
H9|R=;c)cDD
diff --git a/src/Modules/TakeoutSaaS.Module.Authorization/TakeoutSaaS.Module.Authorization.csproj b/src/Modules/TakeoutSaaS.Module.Authorization/TakeoutSaaS.Module.Authorization.csproj
index e1c880a90369295d51fb67a5619bba20cea9fee0..16cf38c9c9bddd2580c43083ca561e2c4bc1a170 100644
GIT binary patch
delta 95
zcmaFHxrKYf0wzYo$qSjTf=CwK$qyK{7N28g1kzrnp$r8KDGZ4WB@C$ywhT%P!3>oQ
l#b918gC2t?gFlcA0LmvbWCO``hD?S$hV;qxOp0K$TmdYs7=Hi&
delta 27
hcmdnO{fu+N0wzX-$qSjTf=HI|#pjqAC(mJ(005C13BCXT
diff --git a/src/Modules/TakeoutSaaS.Module.Delivery/TakeoutSaaS.Module.Delivery.csproj b/src/Modules/TakeoutSaaS.Module.Delivery/TakeoutSaaS.Module.Delivery.csproj
index ff77596..8001b38 100644
--- a/src/Modules/TakeoutSaaS.Module.Delivery/TakeoutSaaS.Module.Delivery.csproj
+++ b/src/Modules/TakeoutSaaS.Module.Delivery/TakeoutSaaS.Module.Delivery.csproj
@@ -10,5 +10,8 @@
+
+
+
diff --git a/src/Modules/TakeoutSaaS.Module.Dictionary/TakeoutSaaS.Module.Dictionary.csproj b/src/Modules/TakeoutSaaS.Module.Dictionary/TakeoutSaaS.Module.Dictionary.csproj
index b03dcec..8cb6277 100644
--- a/src/Modules/TakeoutSaaS.Module.Dictionary/TakeoutSaaS.Module.Dictionary.csproj
+++ b/src/Modules/TakeoutSaaS.Module.Dictionary/TakeoutSaaS.Module.Dictionary.csproj
@@ -9,4 +9,7 @@
+
+
+
diff --git a/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqConnectionFactory.cs b/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqConnectionFactory.cs
index 1ffa9dd..62935ef 100644
--- a/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqConnectionFactory.cs
+++ b/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqConnectionFactory.cs
@@ -12,7 +12,7 @@ public sealed class RabbitMqConnectionFactory(IOptionsMonitor o
///
/// 创建连接。
///
- public Task CreateConnectionAsync(CancellationToken cancellationToken = default)
+ public async Task CreateConnectionAsync(CancellationToken cancellationToken = default)
{
cancellationToken.ThrowIfCancellationRequested();
var options = optionsMonitor.CurrentValue;
@@ -25,6 +25,6 @@ public sealed class RabbitMqConnectionFactory(IOptionsMonitor o
VirtualHost = options.VirtualHost
};
- return Task.FromResult(factory.CreateConnection());
+ return await factory.CreateConnectionAsync(cancellationToken).ConfigureAwait(false);
}
}
diff --git a/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessagePublisher.cs b/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessagePublisher.cs
index 2319a23..3354ddc 100644
--- a/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessagePublisher.cs
+++ b/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessagePublisher.cs
@@ -14,7 +14,7 @@ public sealed class RabbitMqMessagePublisher(RabbitMqConnectionFactory connectio
: IMessagePublisher, IAsyncDisposable
{
private IConnection? _connection;
- private IModel? _channel;
+ private IChannel? _channel;
private bool _disposed;
///
@@ -26,16 +26,16 @@ public sealed class RabbitMqMessagePublisher(RabbitMqConnectionFactory connectio
var channel = _channel ?? throw new InvalidOperationException("RabbitMQ channel is not available.");
// 2. 声明交换机
- channel.ExchangeDeclare(options.Exchange, options.ExchangeType, durable: true, autoDelete: false);
+ await channel.ExchangeDeclareAsync(options.Exchange, options.ExchangeType, durable: true, autoDelete: false, arguments: null, noWait: false, cancellationToken).ConfigureAwait(false);
// 3. 序列化消息并设置属性
var body = serializer.Serialize(message);
- var props = channel.CreateBasicProperties();
+ var props = new BasicProperties();
props.ContentType = "application/json";
- props.DeliveryMode = 2;
+ props.DeliveryMode = DeliveryModes.Persistent;
props.MessageId = Guid.NewGuid().ToString("N");
// 4. 发布消息
- channel.BasicPublish(options.Exchange, routingKey, mandatory: false, basicProperties: props, body: body);
+ await channel.BasicPublishAsync(options.Exchange, routingKey, mandatory: false, basicProperties: props, body: body, cancellationToken).ConfigureAwait(false);
logger.LogDebug("发布消息到交换机 {Exchange} RoutingKey {RoutingKey}", options.Exchange, routingKey);
}
@@ -46,8 +46,8 @@ public sealed class RabbitMqMessagePublisher(RabbitMqConnectionFactory connectio
return;
}
- _connection ??= await connectionFactory.CreateConnectionAsync(cancellationToken);
- _channel = _connection.CreateModel();
+ _connection ??= await connectionFactory.CreateConnectionAsync(cancellationToken).ConfigureAwait(false);
+ _channel = await _connection.CreateChannelAsync(new CreateChannelOptions(false, false, null, null), cancellationToken).ConfigureAwait(false);
}
///
@@ -61,8 +61,19 @@ public sealed class RabbitMqMessagePublisher(RabbitMqConnectionFactory connectio
}
_disposed = true;
- _channel?.Dispose();
- _connection?.Dispose();
- return ValueTask.CompletedTask;
+ return CloseAsync();
+ }
+
+ private async ValueTask CloseAsync()
+ {
+ if (_channel != null)
+ {
+ await _channel.CloseAsync(CancellationToken.None).ConfigureAwait(false);
+ }
+
+ if (_connection != null)
+ {
+ await _connection.CloseAsync(CancellationToken.None).ConfigureAwait(false);
+ }
}
}
diff --git a/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessageSubscriber.cs b/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessageSubscriber.cs
index 608ee5a..f4a4c61 100644
--- a/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessageSubscriber.cs
+++ b/src/Modules/TakeoutSaaS.Module.Messaging/Services/RabbitMqMessageSubscriber.cs
@@ -15,7 +15,7 @@ public sealed class RabbitMqMessageSubscriber(RabbitMqConnectionFactory connecti
: IMessageSubscriber
{
private IConnection? _connection;
- private IModel? _channel;
+ private IChannel? _channel;
private bool _disposed;
///
@@ -28,19 +28,19 @@ public sealed class RabbitMqMessageSubscriber(RabbitMqConnectionFactory connecti
var channel = _channel ?? throw new InvalidOperationException("RabbitMQ channel is not available.");
// 2. 声明交换机、队列及绑定
- channel.ExchangeDeclare(options.Exchange, options.ExchangeType, durable: true, autoDelete: false);
- channel.QueueDeclare(queue, durable: true, exclusive: false, autoDelete: false, arguments: null);
- channel.QueueBind(queue, options.Exchange, routingKey);
- channel.BasicQos(0, options.PrefetchCount, global: false);
+ await channel.ExchangeDeclareAsync(options.Exchange, options.ExchangeType, durable: true, autoDelete: false, arguments: null, noWait: false, cancellationToken).ConfigureAwait(false);
+ await channel.QueueDeclareAsync(queue, durable: true, exclusive: false, autoDelete: false, arguments: null, noWait: false, cancellationToken).ConfigureAwait(false);
+ await channel.QueueBindAsync(queue, options.Exchange, routingKey, arguments: null, noWait: false, cancellationToken).ConfigureAwait(false);
+ await channel.BasicQosAsync(0, options.PrefetchCount, global: false, cancellationToken).ConfigureAwait(false);
// 3. 设置消费者回调
var consumer = new AsyncEventingBasicConsumer(channel);
- consumer.Received += async (_, ea) =>
+ consumer.ReceivedAsync += async (_, ea) =>
{
var message = serializer.Deserialize(ea.Body.ToArray());
if (message == null)
{
- channel.BasicAck(ea.DeliveryTag, multiple: false);
+ await channel.BasicAckAsync(ea.DeliveryTag, multiple: false, cancellationToken).ConfigureAwait(false);
return;
}
@@ -56,16 +56,16 @@ public sealed class RabbitMqMessageSubscriber(RabbitMqConnectionFactory connecti
if (success)
{
- channel.BasicAck(ea.DeliveryTag, multiple: false);
+ await channel.BasicAckAsync(ea.DeliveryTag, multiple: false, cancellationToken).ConfigureAwait(false);
}
else
{
- channel.BasicNack(ea.DeliveryTag, multiple: false, requeue: false);
+ await channel.BasicNackAsync(ea.DeliveryTag, multiple: false, requeue: false, cancellationToken).ConfigureAwait(false);
}
};
// 4. 开始消费
- channel.BasicConsume(queue, autoAck: false, consumer);
+ await channel.BasicConsumeAsync(queue, autoAck: false, consumer, cancellationToken).ConfigureAwait(false);
}
private async Task EnsureChannelAsync(CancellationToken cancellationToken)
@@ -75,8 +75,8 @@ public sealed class RabbitMqMessageSubscriber(RabbitMqConnectionFactory connecti
return;
}
- _connection ??= await connectionFactory.CreateConnectionAsync(cancellationToken);
- _channel = _connection.CreateModel();
+ _connection ??= await connectionFactory.CreateConnectionAsync(cancellationToken).ConfigureAwait(false);
+ _channel = await _connection.CreateChannelAsync(new CreateChannelOptions(false, false, null, null), cancellationToken).ConfigureAwait(false);
}
///
@@ -88,10 +88,14 @@ public sealed class RabbitMqMessageSubscriber(RabbitMqConnectionFactory connecti
}
_disposed = true;
- await Task.Run(() =>
+ if (_channel != null)
{
- _channel?.Dispose();
- _connection?.Dispose();
- }).ConfigureAwait(false);
+ await _channel.CloseAsync(CancellationToken.None).ConfigureAwait(false);
+ }
+
+ if (_connection != null)
+ {
+ await _connection.CloseAsync(CancellationToken.None).ConfigureAwait(false);
+ }
}
}
diff --git a/src/Modules/TakeoutSaaS.Module.Messaging/TakeoutSaaS.Module.Messaging.csproj b/src/Modules/TakeoutSaaS.Module.Messaging/TakeoutSaaS.Module.Messaging.csproj
index 6ac643f..1350a29 100644
--- a/src/Modules/TakeoutSaaS.Module.Messaging/TakeoutSaaS.Module.Messaging.csproj
+++ b/src/Modules/TakeoutSaaS.Module.Messaging/TakeoutSaaS.Module.Messaging.csproj
@@ -5,15 +5,18 @@
enable
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Modules/TakeoutSaaS.Module.Scheduler/TakeoutSaaS.Module.Scheduler.csproj b/src/Modules/TakeoutSaaS.Module.Scheduler/TakeoutSaaS.Module.Scheduler.csproj
index b8a7787..ad73a3f 100644
--- a/src/Modules/TakeoutSaaS.Module.Scheduler/TakeoutSaaS.Module.Scheduler.csproj
+++ b/src/Modules/TakeoutSaaS.Module.Scheduler/TakeoutSaaS.Module.Scheduler.csproj
@@ -6,16 +6,19 @@
-
+
-
-
-
-
-
+
+
+
+
+
+
+
+
diff --git a/src/Modules/TakeoutSaaS.Module.Sms/TakeoutSaaS.Module.Sms.csproj b/src/Modules/TakeoutSaaS.Module.Sms/TakeoutSaaS.Module.Sms.csproj
index 7353ff4..7025f49 100644
--- a/src/Modules/TakeoutSaaS.Module.Sms/TakeoutSaaS.Module.Sms.csproj
+++ b/src/Modules/TakeoutSaaS.Module.Sms/TakeoutSaaS.Module.Sms.csproj
@@ -5,15 +5,18 @@
enable
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Modules/TakeoutSaaS.Module.Storage/TakeoutSaaS.Module.Storage.csproj b/src/Modules/TakeoutSaaS.Module.Storage/TakeoutSaaS.Module.Storage.csproj
index 733f714205aac15c59b71d6e4073f47d610f9b0a..e5ec475bb63bb015a8531f83251a2c8d13746b1b 100644
GIT binary patch
delta 141
zcmca4us~=-9uuS4Er{fe3P|U72v!$I7?vi5;i*^kC#Jt
zvjDpm++i3}wSsSLIZN({jal?=sTUM_Er{fe3P|U72v!$I7?vi5;i*^kC!8S
Mu@yVxWDZUV0Pg!3XaE2J
diff --git a/src/Modules/TakeoutSaaS.Module.Tenancy/TakeoutSaaS.Module.Tenancy.csproj b/src/Modules/TakeoutSaaS.Module.Tenancy/TakeoutSaaS.Module.Tenancy.csproj
index 2617cb0..db28803 100644
--- a/src/Modules/TakeoutSaaS.Module.Tenancy/TakeoutSaaS.Module.Tenancy.csproj
+++ b/src/Modules/TakeoutSaaS.Module.Tenancy/TakeoutSaaS.Module.Tenancy.csproj
@@ -10,4 +10,7 @@
+
+
+
diff --git a/tests/TakeoutSaaS.Application.Tests/TakeoutSaaS.Application.Tests.csproj b/tests/TakeoutSaaS.Application.Tests/TakeoutSaaS.Application.Tests.csproj
index 8c1ec99..0e333a1 100644
--- a/tests/TakeoutSaaS.Application.Tests/TakeoutSaaS.Application.Tests.csproj
+++ b/tests/TakeoutSaaS.Application.Tests/TakeoutSaaS.Application.Tests.csproj
@@ -9,12 +9,15 @@
-
+
-
+
-
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
@@ -25,4 +28,8 @@
+
+
+
+
diff --git a/tests/TakeoutSaaS.Integration.Tests/TakeoutSaaS.Integration.Tests.csproj b/tests/TakeoutSaaS.Integration.Tests/TakeoutSaaS.Integration.Tests.csproj
index f4bacfc..24ff938 100644
--- a/tests/TakeoutSaaS.Integration.Tests/TakeoutSaaS.Integration.Tests.csproj
+++ b/tests/TakeoutSaaS.Integration.Tests/TakeoutSaaS.Integration.Tests.csproj
@@ -9,13 +9,16 @@
-
-
-
-
+
+
+
+
-
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
@@ -29,4 +32,8 @@
+
+
+
+