我应该从Web服务公开强类型数据集并将其直接绑定在客户端吗?或者是否有更合理的方式来提供asmx Web服务?我正在做CRUD操作(创建,读取,更新,删除).
我发现使用数据集是令人沮丧的,例如在插入其中的表时很难处理.当仅插入一条记录或仅从数据集中的特定表中获取一条记录时,将整个数据集来回传送似乎不合逻辑.
有没有更好的办法?
我是应该转换为对象并通过Web服务使用对象?在整个地方进行转换以获得传递的对象可能同样乏味?
我有两个16个元素(字符)数组,我需要"比较",看看两者之间有多少元素相等.
这个例程将被使用数百万次(通常运行大约60或7000万次),所以我需要它尽可能快.我正在研究C++(C++ Builder 2007,用于记录)
现在,我有一个简单的:
matches += array1[0] == array2[0];
Run Code Online (Sandbox Code Playgroud)
重复16次(因为分析看起来比使用for循环快30%)
有没有其他方法可以更快地工作?
有关环境和数据本身的一些数据:
如何编写一个正则表达式在python中使用来分割段落?
段落由2个换行符(\n)定义.但是,可以将任意数量的空格/制表符与换行符一起使用,并且它仍应被视为段落.
我正在使用python,因此解决方案可以使用扩展的python的正则表达式语法.(可以利用(?P...)东西)
the_str = 'paragraph1\n\nparagraph2'
# splitting should yield ['paragraph1', 'paragraph2']
the_str = 'p1\n\t\np2\t\n\tstill p2\t \n \n\tp3'
# should yield ['p1', 'p2\t\n\tstill p2', 'p3']
the_str = 'p1\n\n\n\tp2'
# should yield ['p1', '\n\tp2']
Run Code Online (Sandbox Code Playgroud)
我能得到的最好的是:r'[ \t\r\f\v]*\n[ \t\r\f\v]*\n[ \t\r\f\v]*',即
import re
paragraphs = re.split(r'[ \t\r\f\v]*\n[ \t\r\f\v]*\n[ \t\r\f\v]*', the_str)
Run Code Online (Sandbox Code Playgroud)
但那很难看.还有什么更好的?
编辑:
r'\s*?\n\s*?\n\s*?'- >这会使示例2和3失败,因为\s包含\n,所以它允许段落中断超过2 \n秒.
默认情况下,emacs 22.1.1仅在您首次发出编译命令时显示编译缓冲区的顶部.我想在使用compile命令时自动滚动到底部以节省击键次数.这样我只需查看编译缓冲区并查看当前正在编译的文件而不必切换窗口并滚动到缓冲区的底部,就可以轻松获取当前编译的状态.有任何想法吗?
(请原谅我的无知 - 我不是经验丰富的Oracle用户.)
我正在尝试使用DBMS_METADATA.GET_DDL函数(与ALL_OBJECTS或其他类似的函数)来获取特定模式中所有表的DDL.当我这样做(对于所有对象或单个特定对象)时,我得到一个ORA-31603错误(在模式"SCHEMA"中找不到类型TABLE的"对象"FOO").
我认为这意味着我登录的用户没有必要的权限来读取GET_DDL所需的元数据.这需要什么特权?登录时是否有办法确认当前用户是否拥有此权限?
谢谢!背风处
在C#中有String对象和string对象.
两者有什么区别?有关使用哪种方法的最佳做法是什么?
我已经写了一些Oracle存储过程,其中有20多个输入参数,然后需要10个以上的参数,我希望所有的都有一些值,并且不想接受空值,是否有任何我可以在过程定义本身可以限制空输入参数或我是否必须检查每个值并在所需值为空时引发异常?
当我建立一个网站时,我希望至少有一个浏览器,我可以在没有任何黑客或变通方法的情况下展示它,但仍保留最大的功能.知道没有一个浏览器具有完美的标准依从性,哪一个最接近?
此外,是否有任何标准领域,单个浏览器似乎专门?例如,Opera似乎倾向于坚持所有与语音相关的CSS标准.
我想知道在我的应用程序中处理错误消息的最佳方法是什么.
目前我正在开发一个Web应用程序,所有错误消息都存储在数据库中,我们通过ID获取它们,否定是错误,积极的是成功消息.
问题是很难维护和跟踪短信.
你有什么办法?
我喜欢使用Emacs的shell模式,但它有一些不足之处.其中之一是,当shell命令试图调用编辑器时,打开新缓冲区并不够智能.例如,将环境变量VISUAL设置为vimI ,我将从中获取以下内容svn propedit:
$ svn propedit svn:externals . "svn-prop.tmp" 2L, 149C[1;1H ~ [4;1H~ [5;1H~ [6;1H~ [7;1H~ ...
(从表示中可能很难说,但这是一个可怕的,丑陋的混乱.)
随着VISUAL设置为"emacs -nw",我得到
$ svn propedit svn:externals . emacs: Terminal type "dumb" is not powerful enough to run Emacs. It lacks the ability to position the cursor. If that is not the actual type of terminal you have, use the Bourne shell command `TERM=... export TERM' (C-shell: `setenv TERM ...') to specify the …