var _My_ResetSet_Array = _DB
.tbl_MyTable
.Where(x => x.Active == true
&& x.DateTimeValueColumn <= DateTime.Now)
.Select(x => x);
Run Code Online (Sandbox Code Playgroud)
上层查询工作正常.
但我只想检查日期值.
但是上层查询检查日期+时间值.
在传统的mssql中,我可以编写如下的查询.
SELECT * FROM dbo.tbl_MyTable
WHERE
CAST(CONVERT(CHAR(10), DateTimeValueColumn, 102) AS DATE) <=
CAST(CONVERT(CHAR(10),GETDATE(),102) AS DATE)
AND
Active = 1
Run Code Online (Sandbox Code Playgroud)
所以任何人都可以给我建议我怎样才能检查Linq中的日期值.
1.我有java函数加密xml文件并返回加密的String.
/// Java Class
import java.security.Key;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Base64;
public class Crypt {
public static String key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
public static byte[] key_Array = Base64.decodeBase64(key);
public static String encrypt(String strToEncrypt)
{
try
{
//Cipher _Cipher = Cipher.getInstance("AES");
//Cipher _Cipher = Cipher.getInstance("AES/ECB/PKCS5PADDING");
//Cipher _Cipher = Cipher.getInstance("AES/CBC/PKCS5PADDING");
Key SecretKey = new SecretKeySpec(key_Array, "AES");
Cipher _Cipher = Cipher.getInstance("AES");
_Cipher.init(Cipher.ENCRYPT_MODE, SecretKey);
return Base64.encodeBase64String(_Cipher.doFinal(strToEncrypt.getBytes()));
}
catch (Exception e)
{
System.out.println("[Exception]:"+e.getMessage());
}
return null;
}
public static void main(String[] args) {
StringBuilder sb …
Run Code Online (Sandbox Code Playgroud) 我正在开发需要与COM端口交互的程序.
通过学习这个问答:.NET SerialPort DataReceived事件没有触发,我就像这样编写代码.
namespace ConsoleApplication1
{
class Program
{
static SerialPort ComPort;
public static void OnSerialDataReceived(object sender, SerialDataReceivedEventArgs args)
{
string data = ComPort.ReadExisting();
Console.Write(data.Replace("\r", "\n"));
}
static void Main(string[] args)
{
string port = "COM4";
int baud = 9600;
if (args.Length >= 1)
{
port = args[0];
}
if (args.Length >= 2)
{
baud = int.Parse(args[1]);
}
InitializeComPort(port, baud);
string text;
do
{
String[] mystring = System.IO.Ports.SerialPort.GetPortNames();
text = Console.ReadLine();
int STX = 0x2;
int ETX …
Run Code Online (Sandbox Code Playgroud) 请让我知道为什么ParameterizedThreadStart类只允许只有System.object参数类型包含的方法.
public class MainThreadTest
{
public static void Main(string[] args)
{
Thread T = new Thread(new ParameterizedThreadStart(DisplayYOrX));
T.Start("X");
DisplayYOrX("Y");
}
static void DisplayYOrX(object outValue)
{
string Parameter = (string)outValue;
for(int i=0; i<10; i++)
Console.Write(Parameter);
}
}
Run Code Online (Sandbox Code Playgroud)
为什么我想知道这是我不想再次使用类型转换语法.
string Parameter = (string)outValue;
Run Code Online (Sandbox Code Playgroud) 我的应用程序运行时需要插入两个表.
让我们说我有表格如下
我的问题是数据量.
我需要向tbl_FirstTable插入超过10,000行,并向tbl_SecondTable插入超过500,000行.
如此冷酷,我使用实体框架如下.
public bool Save_tbl_FirstTable_Vs_tbl_SecondTable(List<tbl_FirstTable> List_tbl_FirstTable, List<tbl_SecondTable> List_tbl_SecondTable)
{
bool IsSuccessSave = false;
try
{
using (DummyDBClass_ObjectContext _DummyDBClass_ObjectContext = new DummyDBClass_ObjectContext())
{
foreach (tbl_FirstTable _tbl_FirstTable in List_tbl_FirstTable)
{
_DummyDBClass_ObjectContext.tbl_FirstTable.InsertOnSubmit(_tbl_FirstTable);
}
foreach (tbl_SecondTable _tbl_SecondTable in List_tbl_SecondTable)
{
_DummyDBClass_ObjectContext.tbl_SecondTable.InsertOnSubmit(_tbl_SecondTable);
}
_DummyDBClass_ObjectContext.SubmitChanges();
IsSuccessSave = true;
}
}
catch (Exception ex)
{
Log4NetWrapper.WriteError(string.Format("{0} : {1} : Exception={2}",
this.GetType().FullName,
(new StackTrace(new StackFrame(0))).GetFrame(0).GetMethod().Name.ToString(),
ex.Message.ToString()));
if (ex.InnerException != null)
{
Log4NetWrapper.WriteError(string.Format("{0} : {1} : InnerException Exception={2}",
this.GetType().FullName,
(new StackTrace(new StackFrame(0))).GetFrame(0).GetMethod().Name.ToString(),
ex.InnerException.Message.ToString()));
}
} …
Run Code Online (Sandbox Code Playgroud) parameterizedThreadstart,Threadstart和Thread之间有什么区别?
我在WIKI和Code Project上阅读了ISO 8583消息; 我理解ISO 8583消息基本上可以分为3部分:
1.1.版
1.2.消息类
1.3.消息功能
1.4.消息来源
指出存在哪些数据元素.
整个ISO消息的本质,包含有关事务的信息,例如:
交易类型
量,
客户等
因此,在阅读这两个Web引用之后,我想将我的ISO消息传递日志划分为MTI,位图和数据元素.
例如:
(0800 2020000000800000 000000 000001 3239313130303031)
MTI: 0800 (1987 version, Network Management Message, Request, Acquirer)
Bitmap: 20 20 00 00 00 80 00 00 (eg. 20 = 0010 0000 ,so position 3 is on)
DataElement:(by seeing Bitmap , we can defined data element as follow)
field 03:000000 (Processing Code)
field 11:000001 (Systems trace audit number)
field 41:3239313130303031 (Card …
Run Code Online (Sandbox Code Playgroud) 我有一个项目,我需要与POS交互 - 终端设备和磁/芯片卡.假设客户从我的百货商店购买商品时,该商店的员工将对客户的金融卡进行分类并进行支付交易.
对于那些类似的系统,大多数论坛都说应该考虑使用第三方API,例如:
但我认为这些API应该用于那些将用于国际支付处理的系统.至于我,我认为我的系统没有国际支付处理那么大,并且将开始作为国内小型系统工作.
那么我想知道哪个是最佳解决方案以及系统架构将如何?
当我阅读Authorize.Net页面时,我找到了信用卡处理的例程.
无论我的项目是大型还是小型,国际运行还是国内运行,我都需要遵循这整个程序吗?
我是否真的需要按照此程序使用POS - 终端设备进行支付流程?
我知道的一件事是ISO 8583是必不可少的金融消息传递协议,因为我所在地区的大多数银行交换软件系统只使用这些消息传递格式.这意味着我不能使用其他消息格式,例如我们的NDC或D912.
我想将我的字符串数据转换为sql server中的数组.我尝试过如下.
SELECT '223456789' AS SerialOriginalCode
-- SerialOriginalCode 223456789
DECLARE @tbl_SerialOriginalVerion TABLE(ID INT, SerialOriginalCode INT);
INSERT INTO @tbl_SerialOriginalVerion VALUES
(1, 2),
(2, 2),
(3, 3),
(4, 4),
(5, 5),
(6, 6),
(7, 7),
(8, 8),
(9, 9);
SELECT * FROM @tbl_SerialOriginalVerion
Run Code Online (Sandbox Code Playgroud)
但它是手动方式,它不是程序化转换的方式,因为它需要我键入每一行的每个插入值.
有人可以建议我更多的方式吗?
使用正则表达式,我可以检查它是否是小数
^\d*\.?\d*$
Run Code Online (Sandbox Code Playgroud)
但我想控制的是这些数字的总长度.
(^\d*\.?\d*$){1,10}
Run Code Online (Sandbox Code Playgroud)
但我还是无法控制它.
两天后,我的最终解决方案是
(?=^\d*\.?\d*$)^.{1,10}$
Run Code Online (Sandbox Code Playgroud)
c# ×6
iso8583 ×2
sql-server ×2
.net ×1
ado.net ×1
aes ×1
compare ×1
credit-card ×1
datetime ×1
encryption ×1
java ×1
jpos ×1
regex ×1
serial-port ×1
sql ×1
t-sql ×1