জাভা স্ক্রিপ্ট ইঞ্জিন .NET- এ এম্বেড করা হচ্ছে [বন্ধ]


217

কেবল ভাবছেন যে কেউ যদি কখনও কোনও জেএস ইঞ্জিনকে। নেট পরিবেশে সংযুক্ত করার এবং বাস্তবে সংহত করার চেষ্টা করেছে। আমি খুঁজে পাইনি এবং আসলে (ক পর ব্যবহার অনেক , ব্যথা এবং প্রচেষ্টার পর থেকে এটি বেশ পুরানো এর এবং বেশ সমাপ্ত নয়) spidermonkey-dotnet প্রকল্পের। এই এলাকায় অভিজ্ঞতা আছে কেউ? কাঠবিড়ালি ফিশ, ভি 8 এর মতো ইঞ্জিনগুলি ..

মোজিলার স্পাইডারমনকি (কোর এএসপি.এনইটি অ্যাপ্লিকেশনটির অভ্যন্তরে কাস্টম উপাদানগুলির জন্য এটি রেলগুলির মতো মিনিফ্রেমওয়ার্কের জন্য ব্যবহার করে) আমি সন্তুষ্ট নই তবে আমি বিকল্পগুলির সাথে আরও কিছুটা অন্বেষণ করতে চাই love কমান্ড-লাইন সমাধানগুলি আমার যা প্রয়োজন তা নয়, আমি সিএলআর ব্যতীত অন্য কোনও কিছুর উপর নির্ভর করতে পারি না, আমাকে জাভাস্ক্রিপ্ট / সি # অবজেক্ট থেকে / পদ্ধতিতে কল করতে হবে।

// c# class
public class A
{
    public string Hello(string msg)
    {
        return msg + " whatewer";
    }
}

// js snippet
var a = new A();
console.log(a.Hello('Call me')); // i have a console.log implemented, don't worry, it's not a client-side code :)

কেবল পরিষ্কার করার জন্য - আমি অ্যাপ্লিকেশনটি নিজেই সার্ভার-সাইড জাভাস্ক্রিপ্টে প্রোগ্রাম করার চেষ্টা করছি না । এটি কেবলমাত্র কাস্টম ব্যবহারকারীর সাব অ্যাপ্লিকেশনগুলি লেখার জন্য ব্যবহৃত হয় (কিছুটা ডিএসএল হিসাবে দেখা যায়)। সি # এর চেয়ে সাধারণ মানুষকে জেএসে প্রোগ্রামিং করার অনুমতি দেওয়া অনেক সহজ (এবং নিরাপদ)।

উত্তর:


98

জাভাস্ক্রিপ্ট .NET চেষ্টা করুন । এটি গিটহাবে হোস্ট করা হয়েছে এটি মূলত কোডপ্লেক্সে এখানে হোস্ট করা হয়েছিল, এখানে )

প্রকল্পের আলোচনা: http://javascriptdotnet.codeplex.com / আলোচনা sions

এটি গুগল ভি 8 প্রয়োগ করে। আপনি এটি সরাসরি নেট নেট থেকে জাভাস্ক্রিপ্ট সংকলন এবং চালনা করতে পারেন, এবং জাভাস্ক্রিপ্ট কোড ব্যবহার করার জন্য সিএলআই অবজেক্টগুলি সরবরাহ করতে পারেন। এটি জাভাস্ক্রিপ্ট থেকে নেটিভ কোড উত্পন্ন করে।


+1 টি। এটি সহজ, এবং দুর্দান্ত কাজ করছে বলে মনে হচ্ছে।
জেসি ইনাসিও

6
প্রকল্পগুলির আলোচনার বোর্ডগুলিতে এটি মারা গেছে বলে দাবি রয়েছে, একটি মৌলিক উদাহরণের বাইরে ডকুমেন্টেশনগুলি দুর্বল এবং আমি একটি জাভাস্ক্রিপ্ট ইভেন্ট হ্যান্ডলারটিকে একটি স্ক্রিপ্টে নেট প্রোগ্রামের সাথে যুক্ত করার জন্য সংগ্রাম করছি।
অ্যালান ম্যাকডোনাল্ড

6
নোয়েসিস (মূল বিকাশকারী সংস্থা) প্রকল্পটির প্রতি আগ্রহ হারিয়ে ফেললেও শেষ পর্যন্ত এই সম্প্রদায়কে নিয়ন্ত্রণ দেওয়ার সিদ্ধান্ত নিয়েছে। ফলস্বরূপ এখন একটি নতুন রিলিজ রয়েছে যার মধ্যে অনেকগুলি বাগ সংশোধন রয়েছে। দুর্ভাগ্যক্রমে। নেট থেকে জাভাস্ক্রিপ্ট কলব্যাকগুলি এখনও সমর্থিত নয়।
অলিভার বাক

ভবিষ্যতের জন্য অন্য একটি নোট: এটি প্রদর্শিত হচ্ছে যে নুগেট প্যাকেজটি কোনওভাবে উদাস হয়ে গেছে ... আপনি যখন প্যাকেজটি ইনস্টল করেন এটি বর্তমানে "ঠিক কাজ করে না"।
ক্রিস পিফহল

3
যেহেতু জাভাস্ক্রিপ্টডোটনেট মারা গেছে, তার পরিবর্তে ক্লিয়ারস্ক্রিপ্ট ব্যবহার করে বিবেচনা করুন (এই উত্তরটি দেখুন )
জেবি। মনিকার সাথে।

86

ওপেন সোর্স জাভাস্ক্রিপ্ট ইন্টারপ্রেটার জিন্ট ( http://jint.codeplex.com ) আপনি যা খুঁজছেন ঠিক তাই করে।

সম্পাদনা করুন:
প্রকল্পটি পুরোপুরি পুনরায় লেখা হয়েছে এবং এখন https://github.com/sebastienros/jint এ গিথুব এ হোস্ট করা হয়েছে


6
DLR উপরে নির্মিত আরেকটি সম্ভাবনা: RemObjects স্ক্রিপ্ট .NET জন্য remobjects.com/script.aspx blogs.remobjects.com/blogs/ck/2010/02/23/p1175
aprilchild

আমি মনে করি এটি ডেলফি প্রিজম / অক্সিজেনে লেখা আছে, এবং উত্স কোড হিসাবে সরবরাহ করা হয়েছে যদি আপনি পূর্বোক্ত পণ্যগুলির জন্য লাইসেন্স কিনে না থাকেন তবে এটি তেমন কার্যকর নয়। আমি কি ভূল? যদি কোথাও বাইনারি ফর্মের কোনও সংস্করণ থাকে তবে আমি এটি ব্যবহার করে দেখতে চাই।
অ্যান্ড্রু সাভিনিখ

2
রিমবজেক্টস স্ক্রিপ্টটি অক্সিজেনে লেখা হয়েছে, সঠিক, তবে এটি ব্যবহারের জন্য আপনাকে আসলে অক্সিজেন লাইসেন্সের দরকার নেই - একটির জন্য আপনি রিমোবজেক্টস / ফ্রি থেকে বাইনারি ইনস্টলারটি পেতে পারেন , অন্যটির জন্য আপনি এমনকি অক্সিজেন কমান্ড লাইন সংকলক পেতে পারেন যদি উত্স থেকে আপনার নিজের এটি পুনর্নির্মাণের দরকার ছিল। .NEt প্ল্যাটফর্মের একটি দুর্দান্ত সুবিধা হ'ল ভাষার স্বাধীনতা after আপনার কাছে এটি ব্যবহারের জন্য কোনও লাইব্রেরি কোন ভাষায় লিখিত আছে তা বিবেচ্য নয়।
মার্ক হফম্যান

1
২০১১ সালে সর্বশেষ মুক্তি ... জুরাসিক আরও ভাল বলে মনে হচ্ছে।
রোমান স্টারকভ

3
২০১৪ সালে শেষ প্রকাশটি আসলে: github.com/sebastienros/jint
রোস - এমএসএফটি

54

আপনি মাইক্রোসফ্ট ক্লিয়ারস্ক্রিপ্টে আগ্রহী হতে পারেন যা গিটহাব এ হোস্ট করা এবং এমএস-প্ল লাইসেন্সের অধীনে প্রকাশিত হয়েছে।

আমি কোনও মাইক্রোসফ্ট ফ্যানবয় নই, তবে আমার অবশ্যই স্বীকার করতে হবে যে ভি 8 সাপোর্টের জাভাস্ক্রিপ্ট.নেটের মতো একই কার্যকারিতা রয়েছে এবং আরও গুরুত্বপূর্ণ, প্রকল্পটি এখনও বজায় রাখা আছে। আমি যতটা উদ্বিগ্ন, প্রতিনিধিদের জন্য সমর্থন স্পাইডারমনকি-ডটনেটের চেয়েও ভাল কাজ করে।

PS: এটি জেএসক্রিপ্ট এবং ভিবিএস স্ক্রিপ্টকে সমর্থন করে তবে আমরা এই পুরানো জিনিসটির দ্বারা আগ্রহী নই।

PS: এটি .NET 4.0 এবং 4.5+ এর সাথে সামঞ্জস্যপূর্ণ


3
+1 আমি এই প্রকল্পটি সম্পর্কে পুরোপুরি অজানা ছিলাম, প্রতিশ্রুতিবদ্ধ বলে মনে হচ্ছে আশা করি এটি অন্যান্য মজাদারদের মতো একই কাজ করার চেষ্টা করছে না!
পিটার

উইন্ডোজ ব্যবহার করে ক্লিয়ারস্ক্রিপ্টে আমি আলাদা আলাদা জিনিস খুঁজে পেয়েছি J
Brain2000

এখানে ক্লিয়ারস্ক্রিপ্ট নিয়ে আমার সমস্যা। এটি চালানোর সময় অভিযোগ আছে যে এখানে অনুপস্থিত ঘর রয়েছে। তারপরে আমাকে অতিরিক্ত ভিজ্যুয়াল স্টুডিও উপাদানগুলি ইনস্টল করতে বলা হচ্ছে। এটির কোনও সমস্যা হ'ল ব্যতীত আমার কোনও প্রশাসকের অধিকার নেই যেখানে আমি কোডটি চালাব। এটি পুরোপুরি একটি ডিএল-তে অন্তর্ভুক্ত থাকলে ভাল হবে।
টাটিওভারফ্লো

38

যে কেউ জুরাসিককেও চেক আউট করে দেখার জন্য:

http://jurassic.codeplex.com/

সম্পাদনা করুন: এটি গিথুব এ চলে গেছে (এবং প্রথম নজরে সক্রিয় বলে মনে হচ্ছে)

https://github.com/paulbartrum/jurassic


3
এটি এমন কয়েকটি প্রকল্পের মধ্যে একটি যা দেশী। নেট কোড (f.ex. পরিবর্তে ভি 8 ইঞ্জিনটি ব্যবহার করে) রয়েছে এবং এটি এখনও সমর্থিত বলে মনে হচ্ছে (একমাস্ক্রিপ্ট ডটকম, জেএসক্রিপটনেট এবং অন্যদের একগুচ্ছ বলে মনে হচ্ছে) মৃত). +1 এবং লিঙ্কটির জন্য ধন্যবাদ!
আটলস্টে

2
এই উত্তরের তালিকাভুক্ত প্রতিটি প্রকল্প পরীক্ষা করে দেখার পরে, আমি জুরাসিকের সাথে বাস করলাম। এটি কেবলমাত্র দু'ত তিনজনের মধ্যে এখনও সক্রিয়ভাবে রক্ষণাবেক্ষণ করা হয়, এটি সত্য জেএস, অত্যন্ত পরীক্ষিত এবং খাঁটি is নেট ET
রোমান স্টারকভ

জুরাসিকের জন্য আমার সমর্থন যুক্ত করবে। এটি কার্যকর করার প্রসঙ্গে রান স্টেটকে সিরিয়ালিয়াল করারও ক্ষমতা রাখে। তার মানে আপনি আক্ষরিকভাবে আপনার জাভাস্ক্রিপ্ট রানটাইম, ভেরিয়েবল এবং সমস্ত কিছু চালিয়ে যেতে পারেন। কিছু ক্ষেত্রে অত্যন্ত কার্যকর বৈশিষ্ট্য।
জেরোম হাল্টম

হাই ওয়াসাবি, মৃত্যুদন্ড কার্যকর করার প্রেক্ষাপটে কীভাবে রানের অবস্থাটি সিরিয়ালায়িত করা যায় সে সম্পর্কে আমি কিছুই খুঁজে পাইনি। আপনি কীভাবে এটি অর্জন করেছেন?
হেনিং

8

আপনি আয়রনজেএস চেষ্টা করতে পারেন, আশাব্যঞ্জক দেখায় যদিও এটি ভারী বিকাশে রয়েছে। https://github.com/fholm/IronJS


আমরা বর্তমানে আয়রনজেএস ব্যবহার করি তবে এটি আজকাল একটি ডেড প্রজেক্ট এবং সংকলকটি এফ # তে লিখিত আছে যা আমি আশেপাশে হাতিয়ার করতে পারি তবে এতে দক্ষ নই।
রুশবিশপ

7

আমি অনুমান করি যে আপনি এটি করার চেষ্টা করছেন তা সম্পর্কে আমি এখনও অস্পষ্ট, তবে জেএসক্রিপট.নেট এটি সন্ধান করার পক্ষে উপযুক্ত হতে পারে, যদিও পরিচালিত জেএসক্রিপ্ট মনে হয় এটি আপনার প্রয়োজনের জন্য আরও উপযুক্ত হতে পারে (এটি JScript.NET এর চেয়ে বেশি জাভাস্ক্রিপ্টের মতো) ।

ব্যক্তিগতভাবে, আমি ভেবেছিলাম যে কোনওভাবে ভি 8 একীভূত করা ভাল হবে, তবে উত্স কোডটি ডাউনলোড করার আগে আমি পাইনি; আমি যদি সত্যিই এটির সাথে কিছু করার সময় পাই


প্রকৃতপক্ষে পরিচালিত জেএসক্রিপ্টটি আমার প্রয়োজনের সবচেয়ে কাছের জিনিস। আমি জানতাম এটি সিলভারলাইটে ছিল, জানি না এটি প্রকাশিত হয়েছিল। JScript.NET কোনও বিকল্প নয়। আমি সত্যিই পুরো নেট নেট স্ট্যাকগুলিতে ব্যবহারকারীদের অ্যাক্সেস দিতে চাই না। আমার কেবল কয়েকটি বিল্ট-ইন অবজেক্টের প্রয়োজন যা তারা তাদের অ্যাপ্লিকেশনগুলির জন্য ব্যবহার করতে পারেন।
এপ্রিলচাইল্ড

17
এটি ২০০৯ এবং পরিচালিত জেএসক্রিপ্ট এখন মারা গেছে।
আলেকজান্ডার আব্রামভ

5

ভাষাটি যদি কোনও সমস্যা না হয় (কোনও স্যান্ডবক্সযুক্ত স্ক্রিপ্টযুক্ত) তবে .NET এর জন্য LUA রয়েছে । .NET ফ্রেমওয়ার্কের সিলভারলাইট সংস্করণটিও আফিক স্যান্ডবক্সযুক্ত।


5

আরে জাভাস্ক্রিপ্টের জন্য একবার দেখুন। 0.3.1 সংস্করণ সহ কোডপ্লেক্সে নেট ( http://javascriptdotnet.codeplex.com/ ) কিছু সুন্দর মিষ্টি নতুন বৈশিষ্ট্য রয়েছে যা সম্ভবত আপনার আগ্রহী হবে।

একটি নমুনা কোড পরীক্ষা করে দেখুন:

// Initialize the context
JavascriptContext context = new JavascriptContext();

// Setting the externals parameters of the context
context.SetParameter("console", new SystemConsole());
context.SetParameter("message", "Hello World !");
context.SetParameter("number", 1);

// Running the script
context.Run("var i; for (i = 0; i < 5; i++) console.Print(message + ' (' + i + ')'); number += i;");

// Getting a parameter
Console.WriteLine("number: " + context.GetParameter("number"));

। নেট বস্তুর জন্য এটি কাজ করে। উদাহরণস্বরূপ: আমার যদি কোনও কর্মচারী শ্রেণি থাকে তবে আমি কী ভিজিটরটি ভি 8 তে পাস করতে এবং জাভাস্ক্রিপ্ট থেকে কর্মচারী বস্তুটি পরিচালনা করতে পারি?
জয় জর্জ কুঞ্জিককুরু


5

পরিবর্তে আমি অনেক সহজ সমাধান নিয়ে এসেছি।

আমি .dllজাভাস্ক্রিপ্ট ব্যবহার করে একটি ফাইল তৈরি করেছি এবং এর পরে জাভাস্ক্রিপ্ট সংকলকটি ব্যবহার করে এটি সংকলিত করেছি যা ভিএস ২০১৩ বিকাশকারী কমান্ড প্রম্পটে উপলব্ধ।

আমাদের কাছে একবার আমরা .dllএটি \Supportফোল্ডারে যুক্ত করি এবং তারপরে এটি প্রকল্পে রেফার করে যা জাভাস্ক্রিপ্টের বিবৃতিগুলি খণ্ডন করার জন্য প্রয়োজনীয়।

একটি তৈরির বিশদ পদক্ষেপ .dll:

  1. কেবলমাত্র এই বিষয়বস্তু দিয়ে নোটপ্যাডে একটি ফাইল তৈরি করুন:

    class EvalClass { function Evaluate(expression: String) { return eval(expression); } } 
  2. ফাইল হিসাবে সংরক্ষণ করুন C:\MyEval.js

  3. একটি ভিএস ২০০৫ কমান্ড প্রম্পট খুলুন (শুরু, প্রোগ্রামগুলি, ভিএস ২০০৫, ভিএস ২০০৫ সরঞ্জাম)

  4. Cd\পেতে টাইপ করুনC:\

  5. আদর্শ

    jsc /t:library C:\MyEval.js
  6. নামে একটি নতুন ফাইল তৈরি করা হয় MyEval.dll

  7. MyEval.dllপ্রকল্পে অনুলিপি করুন এবং এটি উল্লেখ করুন (এছাড়াও রেফারেন্স Microsoft.Jscript.dll)।

  8. তারপরে আপনার এটিকে এভাবে কল করতে সক্ষম হওয়া উচিত:

    Dim jScriptEvaluator As New EvalClass
    Dim objResult As Object
    objResult = jScriptEvaluator.Evaluate(“1==1 && 2==2”)

objResult হয় True


4

আমি নেটনেট এর জন্য রিমবজেক্টস স্ক্রিপ্টটি চেষ্টা করেছি

এটি কাজ করে, যদিও আমাকে সিনট্যাক্সের var a=A.createA();পরিবর্তে জাভাস্ক্রিপ্ট থেকে একটি স্ট্যাটিক কারখানা ( ) ব্যবহার করতে হয়েছিল var a=new A()। (এক্সপোজটাইপ ফাংশনটি কেবল স্ট্যাটিক্সকেই উন্মোচিত করে!) খুব বেশি ডকুমেন্টেশন নয় এবং উত্সটি ডেল্ফি প্রিজম দিয়ে লেখা হয়েছে, যা আমার এবং রেডগেট প্রতিচ্ছবিটির জন্য বরং অস্বাভাবিক is

সুতরাং: ব্যবহার করা সহজ এবং সেটআপ করা, তবে উন্নত পরিস্থিতিগুলির জন্য খুব বেশি সহায়তা নয়।

কেবল কোনও ডিরেক্টরিতে অ্যাসেমব্লিগুলি বাদ দেওয়ার পরিবর্তে কিছু ইনস্টল করা আমার পক্ষে নেতিবাচক ...


2

মাইক্রোসফ্টের যে কোনও কিছুতে স্ক্রিপ্ট এক্সটেনসিবিলিটি যুক্ত করার নথিভুক্ত উপায় হ'ল আইএ্যাকটিভস্ক্রিপ্ট। স্ক্রিপ্ট লজিক কল করতে আপনি যে কোনও .NET অ্যাপের মধ্যে থেকে আইএ্যাকটিভস্ক্রিপ্ট ব্যবহার করতে পারেন। যুক্তি আপনি স্ক্রিপ্টিং প্রসঙ্গে রেখেছেন NET অবজেক্টগুলিতে পার্ট করতে পারেন।

এই উত্তরটি এমন একটি অ্যাপ্লিকেশন সরবরাহ করে যা কোড সহ এটি করে:


2

সি # তে একটি অ্যাক্টিএক্স স্ক্রিপ্টিং ইঞ্জিন হোস্টের একটি বাস্তবায়ন এখানে পাওয়া যায়: পার্স এবং সি # দ্বারা জেএস কার্যকর করুন

এটি জাভাস্ক্রিপ্ট (বা ভিবিএস স্ক্রিপ্ট) সরাসরি সি # থেকে, স্থানীয় 32-বিট বা 64-বিট প্রক্রিয়াগুলিতে ব্যবহার করতে দেয়। পুরো উত্সটি সি # কোডের 500 ডলার লাইন। এটি কেবল ইনস্টলড জেএসক্রিপ্ট (বা ভিবিএস স্ক্রিপ্ট) ইঞ্জিন ডিএলএল এর উপর অন্তর্নিহিত নির্ভরতা রাখে।

উদাহরণস্বরূপ, নিম্নলিখিত কোড:

Console.WriteLine(ScriptEngine.Eval("jscript", "1+2/3"));

1.66666666666667 প্রদর্শন করবে



1

আমি বিশ্বাস করি যে সমস্ত বড় ওপেনসোর্স জেএস ইঞ্জিন (জাভাস্ক্রিপ্টকোর, স্পাইডারমনকি, ভি 8, এবং কেজেএস) এম্বেডিং এপিআই সরবরাহ করে। কেবলমাত্র আমি যার সাথে সরাসরি পরিচিত তা হ'ল জাভা স্ক্রিপ্টকোর (যা জেএস ইঞ্জিনের নাম যার কাঠবিড়াল ফিশ বাস করে) যা খাঁটি সি এপিআই সরবরাহ করে। যদি মেমরিটি পরিবেশন করে (আমি। নেট ব্যবহার করে কিছুক্ষণ হয়ে গেছে) C সিআইপি'র সাথে লিঙ্ক করার জন্য নেটকে মোটামুটি ভাল সমর্থন রয়েছে।

অন্যান্য ইঞ্জিনগুলির জন্য এপিআইয়ের পছন্দগুলি কী তা আমি সত্যই নিশ্চিত নই, তবে আমি জানি যে তারা সমস্ত সরবরাহ করে।

এটি বলেছিল যে আপনার উদ্দেশ্যগুলির উপর নির্ভর করে জেএসক্রিপ্ট.এনইটি সবচেয়ে ভাল হতে পারে, কারণ এই সমস্ত অন্যান্য ইঞ্জিনগুলির জন্য আপনার অ্যাপ্লিকেশনটির সাথে অন্তর্ভুক্ত করা প্রয়োজন, কারণ জেএসসি কেবলমাত্র একটি ওএস দিয়ে জাহাজীকরণকারী, তবে ওএস হ'ল ম্যাকস: ডি


2
হ্যাঁ, সমস্ত বড় ইঞ্জিনগুলি সাধারণত এম্বেডযোগ্য হয়, তবে কেবল অনেকগুলি বাধা রয়েছে। এম্বেডিং গাইড অধ্যয়ন, সি (++) এপিআই শিখতে .. আমি আশা করছিলাম সেখানে ইতিমধ্যে ইন্টিগ্রেশন নিয়ে কিছু কাজ হবে। JScript.NET ব্যবহার করা যাবে না, আসল কোডটি ইন্টারনেট ব্যবহারকারীরা লিখেছেন এবং সম্পাদন করেছেন।
এপ্রিলচাইল্ড

1

আমি জানি আমি একটি পুরানো সুতো খুলছি তবে স্মেটে (স্পাইডারমনকি-ডটনেট) অনেক কাজ করেছি done সাম্প্রতিক বছরগুলিতে। এটি মূল বিকাশের ফোকাসটি স্পাইডারমনকি ইঞ্জিনে। নেট অবজেক্টগুলিকে নির্বিঘ্ন এম্বেড করে। এটি জেএস মানগুলি থেকে। নেট অবজেক্টে বিভিন্ন ধরণের রূপান্তর সমর্থন করে। প্রতিনিধি এবং ইভেন্ট সহ যারা কিছু।

কেবল এটি বলার অপেক্ষা রাখে যে এটি এখনই খতিয়ে দেখা উচিত যে এতে কিছুটা স্থির বিকাশ রয়েছে :) :) আমি বাগ ফিক্স এবং নতুন বৈশিষ্ট্যগুলির সাথে এসভিএন রেপো টু ডেট রাখি। উত্স এবং প্রকল্প সমাধান ফাইলগুলি ডাউনলোডে সফলভাবে তৈরি করতে কনফিগার করা হয়েছে। এটি ব্যবহার করতে যদি কোনও সমস্যা হয় তবে নির্দ্বিধায় আলোচনা খুলুন।

আমি একটি পরিচালিত জাভাস্ক্রিপ্ট সমাধানের আকাঙ্ক্ষাটি বুঝতে পারি, তবে আমি যে সমস্ত পরিচালিত জাভাস্ক্রিপ্ট ব্যবহার করেছি সেগুলির মধ্যে তারা এমন কিছু মূল বৈশিষ্ট্যগুলির খুব অভাব বোধ করছে যা এগুলি তাদের দৃust় এবং সহজেই কাজ করতে সহায়তা করে। আমি নিজেও কিছুটা পরিপক্ক হওয়ার জন্য আয়রনজেএস-এ অপেক্ষা করছি। আমি অপেক্ষা করার সময়, আমি স্পাইডারমনকি-ডটনেট =) এর সাথে খেলতে মজা করি

স্পাইডারমনকি-ডটনেট প্রকল্প এবং ডাউনলোড পৃষ্ঠা

সম্পাদনা করুন: আজ বিকেলে ডকুমেন্টেশন উইকি পৃষ্ঠা তৈরি করা হয়েছে।


1

রিওস্ক্রিপ্ট চেষ্টা করুন , একটি মুক্ত-উত্স জাভাস্ক্রিপ্ট ইন্টারপ্রেটার সি # তে প্রয়োগ করা হয়েছে।

রিওসক্রিপ্ট আপনার অ্যাপ্লিকেশনটিকে জাভাস্ক্রিপ্ট কার্যকর করতে পারে। এটির বিভিন্ন ধরণের এক্সটেনশন মেথন রয়েছে যেমন সেটভেরিয়েবল, ফাংশন এক্সটেনশন, সিএলআর টাইপ ব্যবহার করে। নেট ইভেন্ট বাইন্ডিং ইত্যাদি has

ওহে বিশ্ব:

ScriptRunningMachine srm = new ScriptRunningMachine();
srm.Run(" alert('hello world!'); ");

এবং এখানে স্ক্রিপ্টের একটি উদাহরণ যা একটি উইনফর্ম তৈরি করে এবং এটি দেখায়।

import System.Windows.Forms.*;        // import namespace

var f = new Form();                   // create form
f.click = function() { f.close(); };  // close when user clicked on form

f.show();                             // show 

0

জেএস-এর একটি লাইব্রেরি (dll) পেতে JScriptT.NET ব্যবহার করুন। তারপরে আপনার .NET অ্যাপ্লিকেশনটিতে এই dll রেফারেন্স করুন এবং আপনি ঠিক সেখানে আছেন। সম্পন্ন!


0

আপনি জাভাতে লেখা রজনো একটি মোজিলা জাভাস্ক্রিপ্ট ইঞ্জিন ব্যবহার করতে পারেন এবং এটি IKVM এর সাহায্যে ব্যবহার করতে পারেন, এখানে কিছু নির্দেশাবলী দেওয়া হয়েছে

নির্দেশাবলী: https://www.codeproject.com/Articles/41792/ এম্বেডিং- JavasScript-into-C-with-Rhino- এবং- IKVM


0

V8.NET ব্লকের একটি নতুন বাচ্চা (এপ্রিল 2013 হিসাবে) যা দেশী ভি 8 ইঞ্জিন কার্যকারিতা আরও ঘনিষ্ঠভাবে আবৃত করে। এটি বাস্তবায়নের উপর আরও নিয়ন্ত্রণের অনুমতি দেয়।


-5

ASP.Net MVC4 Razorভিউ ইঞ্জিনের সাহায্যে এটি এখন সম্ভব । কোডটি হ'ল:

// c# class
public class A
{
    public string Hello(string msg)
    {
        return msg + " whatewer";
    }
}

// js snippet
<script type="text/javascript">
var a = new A();
console.log('@a.Hello('Call me')'); // i have a console.log implemented, don't worry, it's not a client-side code :)
</script>

এবং Razorকেবল এমভিসি 4 বা অন্য কোনও ওয়েব অ্যাপ্লিকেশনগুলির জন্য নয় এবং আপনি এটি অফলাইন ডেস্কটপ অ্যাপ্লিকেশনগুলিতে ব্যবহার করতে পারেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.