我在 SQL 中有代码,它会占用 SMS 消息的长度,并告诉我消息有多少部分。
消息 <= 160 个字符是一部分。
超过 160 个字符的消息成为多部分消息,每个部分将包含 152 个字符。有人可以帮我找出一个体面的算法来完成类似于 C# 中的以下内容(欢迎使用 lambda 和 linq 表达式):
select
(case
when (LEN(Message)<=160) then 1
when (LEN(Message)>160 and LEN(Message)<305) then 2
when (LEN(Message)>304 and LEN(Message)<457) then 3
when (LEN(Message)>456 and LEN(Message)<609) then 4
when (LEN(Message)>608 and LEN(Message)<761) then 5
when (LEN(Message)>760 and LEN(Message)<913) then 6
when (LEN(Message)>912 and LEN(Message)<1065) then 7
when (LEN(Message)>1064 and LEN(Message)<1217) then 8
when (LEN(Message)>1216 and LEN(Message)<1369) then 9
when (LEN(Message)>1368 and LEN(Message)<1521) then 10
else 'n'
end) as [Msg Parts]
from tblAuditLog