문자열에서 표현식 평가에 대한 질문이 있습니다. 현재 DB에 저장된 문자열로부터 수학적 표현식을 계산해야하는 프로젝트에서이 문자열을 평가하는 C# 메서드를 만들고 싶습니다.이 함수는 저장 프로 시저 또는 DB에 추가 된 함수에서 실행됩니다. 그래서 문제는 NCalc 나 Jace.Net과 같은 솔루션을 이미 만든 C# 함수에서 사용하고 싶지만 db에서 실행하려면 db (예 : NCalc.dll 또는 Jace.dll)를 db에 추가해야합니다. 어셈블리. 그리고 이러한 솔루션을 추가하는 것은 상당히 문제가 있습니다. NCalc는 안전하지 않은 코드를 사용하고 Sql 서버는이 DLL로부터 메소드를 실행할 수 없지만 Jace는 DB에 추가해야하는 추가 dll이 필요합니다. 이는 용인 할 수없는 해결책입니다. 그래서 어느 누구든지 db에 추가되어 실행될 수있는 작업 표현식 평가자를 알고 있다면? Thx 사전에 도움을.수식 평가
나는 마이크로 소프트 SQL 서버 2012 (SP1) 사용하고 있습니다 - 11.0.3128.0 (X64) 2)과 닷넷 프레임 워크 4.5
계산이 얼마나 복잡합니까? 간단한 + -/*()는 XPathDocument를 사용하여 수행 할 수도 있고 직접 작성할 수도 있습니다. 이들은 관리 코드에서 제 3 자 dll없이 실행할 수 있습니다. http://answers.unity3d.com/questions/34349/how-to-evaluate-a-mathematical-expression-in-unity.html – Maarten
다음을 참조하십시오 : int [] table = {1, 2, 3, 4, 5}; int [] table2 = {1, 3, 4, 5, 7, 100}; var output = Formula.Evaluate ("[x] <1 또는 [w] == 10", Formula.Evaluate ("(Avg ([x])/[y] + Max ([z])", 테이블 , 10, table2), 10); 꽤 복잡하고 앞으로는 FFT 나 STDEV와 같은 계산식을 사용할 수 있어야합니다. – blindepl
"평가"기능을 사용한다고 가정 해 보겠습니다. T-SQL에서 호출하는 방법을 보여줄 수 있습니까? 많은 일이 분명 해져야합니다. 예 : 배열을 CLR 함수에 전달하는 방법은 무엇입니까? –