Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >分析字符串C# LINQ表达式

分析字符串C# LINQ表达式
EN

Stack Overflow用户
提问于 2010-09-23 21:07:29
回答 2查看 14.2K关注 0票数 15

我试图在这里做一些真正的动态查询-最好不要在运行时调用编译器。

我有一个包含LINQ表达式的字符串,例如

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var s = "from a in queryable where a.Type == 1 select a";

如何才能从中获得结果IQueryable或表达式呢?

我见过LINQPad和RavenDb都这样做,所以我相信有一种方法,只是我还没有找到。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-09-23 21:13:05

您有一些选项:

  1. 做了一些自己开发的事情,解析文本并构建表达式树。这样做的标准方法是使用语言解析器来解析字符串(如ANTLR).
  2. Use CodeDOM )来编译查询(不建议用于生产环境,因为这样做很慢,并且每次编译都会生成一个程序集,如果您使用了很多程序集,这将使您的AppDomain充满程序集。我要强调的是,如果你有任何类型的量,不要走这条路--尽管这是LINQPad所做的)- http://social.msdn.microsoft.com/Forums/en-US/linqprojectgeneral/thread/6a4defd2-76f0-4865-97b7-130e4ba7b50a
  3. Use Mono的编译器直接发出MSIL (所以每次编译没有汇编,速度更快)- Mono Compiler as a Service (MCS)
  4. Use Dynamic LINQ (有一些限制和限制,但基本上做了第一点中建议的事情,很好,轻量级,并且能够只允许某些方法调用)。它解析文本查询并根据它构建表达式树)- http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx
票数 20
EN

Stack Overflow用户

发布于 2010-09-23 21:17:15

从一个“魔术字符串”到编码对象总是涉及到某种解析。在这种情况下,最好使用EditableExpression库(可从Google Code免费获得)。获取您的字符串,并将其格式化为序列化一系列EditableExpressions的结果。然后,简单地反序列化它并将其转换为表达式树。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3782538

复制
相关文章
node+express构建后端项目
项目启动后,在浏览器就可以访问了localhost:3000,访问成功会出现以下页面
程序员不务正业
2019/09/29
1.3K0
《Node.js+Express+Vue项目实战》-- 1.安装和使用Express(笔记)
Express 是一个精简、灵活的 Node.js 的 Web 应用程序开发框架,为 Web 和移动应用程序提供了一组强大的功能,使用 Express 可以快速地开发一个 Web 应用。
爱学习的程序媛
2022/04/07
4.3K0
《Node.js+Express+Vue项目实战》-- 1.安装和使用Express(笔记)
TypeScript在node项目中的实践
TypeScript可以理解为是JavaScript的一个超集,也就是说涵盖了所有JavaScript的功能,并在之上有着自己独特的语法。 最近的一个新项目开始了TS的踩坑之旅,现分享一些可以借鉴的套路给大家。
贾顺名
2019/12/09
1.7K0
TypeScript在node项目中的实践
使用 Node.js 和 Express.js 搭建简易 HTTP/2 服务器
自从 1975 年左右使用 TCP/IP 协议的现代互联网诞生至今已经过了惊人的41年了。在它生涯的大部分时间里,我们使用 HTTP 以及它的继任者 HTTP/1.1 (1.1 版本) 在客户端和服务器之间进行通讯。它很好的支撑起了这个网络世界,但是开发者们构建网站的方式发生了巨大的变化。现在有无数的外部资源、图片、CSS 文件和 JavaScript 文件。这些资源的数量只增不减。
疯狂的技术宅
2019/03/27
2.9K0
使用 Node.js 和 Express.js 搭建简易 HTTP/2 服务器
node.js + express 后端项目小坑
PROTOCOL_CONNECTION_LOST PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR
程序员不务正业
2020/02/18
1.5K0
node Express 框架
Express事实上Node内置的http模块上构建的一层抽象。理论上所有Express实现的功能都能用Node实现
mySoul
2018/07/29
5.3K0
Node.js 项目 TypeScript 改造指南
如果你有一个 Node.js 项目,并想使用 TypeScript 进行改造,那本文对你或许会有帮助。
五月君
2019/12/06
8.4K0
Node.js 项目 TypeScript 改造指南
Node.js项目TypeScript改造指南
如果你有一个 Node.js 项目,并想使用 TypeScript 进行改造,那本文对你或许会有帮助。
coder_koala
2019/12/05
4.6K0
使用Typescript开发node.js项目
typescript 通过构造函数的参数直接定义属性,为了证明,我们创建一个info.ts文件 内容如下
lilugirl
2019/05/28
2.6K0
Node.js项目TypeScript改造指南
如果你有一个 Node.js 项目,并想使用 TypeScript 进行改造,那本文对你或许会有帮助。
WecTeam
2019/12/24
4.4K0
如何运行github上面的node+express项目
在学习过程之中,除了看完教程之外,我们还需要完成一个重要的步骤,那就是做一个项目来巩固和联系,就像是学生时代那般,上完课是要找作业来练习加深印象是一个道理。
王小婷
2019/03/04
1.2K0
如何运行github上面的node+express项目
node框架express的研究
在node中,express可以说是node中的jQuery了,简单粗暴,容易上手,用过即会,那么我们来试一下怎么实现。下面我们基于4.16.2版本进行研究
lhyt
2022/09/21
9560
node框架express的研究
Node.js 项目 TypeScript 改造指南(二)
最近笔者把一个中等规模的 Koa2 项目迁移到 TypeScript,和大家分享一下 TypeScript 实践中的经验和技巧。
WecTeam
2019/12/26
3.6K0
Node | Express简单使用
express提供了一个非常好用的函数,叫做express.static(),通过它,我们可以非常方便地创建一个静态资源服务器,例如,通过如下代码就可以将static目录下的图片、CSS文件、JavaScript 文件对外开放访问了:
倾盖
2022/08/16
1K0
Node | Express简单使用
Node.js + express 的使用
变化的路由 我们再访问服务器时描绘涉及到许许多多的路由,这是我们不可能将他们都一一列举出来,所以我们就可以用 ‘ :’ 来解决,如下:
圆号本昊
2021/09/24
2.7K0
Node + Express + Mysql的CMS小结
因为之前用过上述的组合完成过很多系统,而这一次是为了实现一个帮助系统的静态网页发布。因为很久不写,重点说遇到的几个坑:
meteoric
2018/11/19
1.5K0
Vue.js + Node.js + Express + MySQL示例:构建全栈CRUD应用程序
上次修改时间:2020年10月16日 bezkoder Full Stack,Node.js,Vue.js
ccf19881030
2020/11/10
25.1K0
Vue.js + Node.js + Express + MySQL示例:构建全栈CRUD应用程序
express:node throwing error on mongodb
与此类似node throwing error on mongodb,一直报Db.open那里出错,查源代码,发现应该是有err参数传入,因为之前从来没接触过mongodb--在某些文章中看到稍微有些了解,觉得是不是没有安装mongodb的问题呢?试了一下,果然如此。
meteoric
2018/11/16
5390
Express,Sequelize和MySQL的Node.js Rest API示例
本文翻译自Node.js Rest APIs example with Express, Sequelize & MySQL
ccf19881030
2020/11/10
12.7K0
Express,Sequelize和MySQL的Node.js Rest API示例
一种不错的 BFF Microservice GraphQL/REST API 层的开发方式
云原生(Cloud Native)Node JS Express Reactive 微服务模板 (REST/GraphQL) 这个项目提供了完整的基于 Node JS / Typescript 的微服务模板,包括生产部署、监控、调试、日志记录、安全、CI/CD 所需的所有功能。还添加了基于响应性扩展的示例,以演示如何将其用于构建微服务 API 边缘服务(edge-service)、前端的后端(BFF)或将其用作构建任何类型微服务的基础。
为少
2021/05/27
2.4K0
一种不错的 BFF Microservice GraphQL/REST API 层的开发方式

相似问题

微软认可的带有node/express的TypeScript入门项目没有任何类吗?

10

设置node.js & express项目

115

TypeScript与现有Node js express项目的集成

112

为Node/Express/类型记录和Node设置一个项目

20

使用typescript项目设置node.js

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文