如果我在String中有一些文本,我如何将其复制到剪贴板,以便用户可以将其粘贴到另一个窗口(例如,从我的应用程序到记事本)?
我有下面的代码(我已经包含了我认为的所有相关部分):
private String readCommand = "SELECT LEVEL FROM USERS WHERE VAL_1 = ? AND VAL_@ = ?;";
public bool read(string id)
{
level = -1;
MySqlCommand m = new MySqlCommand(readCommand);
m.Parameters.Add(new MySqlParameter("", val1));
m.Parameters.Add(new MySqlParameter("", val2));
MySqlDataReader r = m.ExecuteReader();
if (r.HasRows)
level = Convert.ToInt32(r.GetValue(0).ToString());
r.Close();
return true;
}
Run Code Online (Sandbox Code Playgroud)
当我运行它时,我在添加第一个参数时得到IndexOutOfBoundsException.我做错了什么?
我有一个查询要在表中插入一行,该表有一个名为ID的字段,该字段使用列上的AUTO_INCREMENT填充.我需要为下一部分功能获取此值,但是当我运行以下操作时,即使实际值不为0,它也始终返回0:
MySqlCommand comm = connect.CreateCommand();
comm.CommandText = insertInvoice;
comm.CommandText += "\'" + invoiceDate.ToString("yyyy:MM:dd hh:mm:ss") + "\', " + bookFee + ", " + adminFee + ", " + totalFee + ", " + customerID + ")";
int id = Convert.ToInt32(comm.ExecuteScalar());
Run Code Online (Sandbox Code Playgroud)
根据我的理解,这应该返回ID列,但每次只返回0.有任何想法吗?
编辑:
当我跑:
"INSERT INTO INVOICE (INVOICE_DATE, BOOK_FEE, ADMIN_FEE, TOTAL_FEE, CUSTOMER_ID) VALUES ('2009:01:01 10:21:12', 50, 7, 57, 2134);last_insert_id();"
Run Code Online (Sandbox Code Playgroud)
我明白了:
{"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right …Run Code Online (Sandbox Code Playgroud) 我尝试运行以下语句:
INSERT INTO VOUCHER (VOUCHER_NUMBER, BOOK_ID, DENOMINATION)
SELECT (a.number, b.ID, b.DENOMINATION)
FROM temp_cheques a, BOOK b
WHERE a.number BETWEEN b.START_NUMBER AND b.START_NUMBER+b.UNITS-1;
Run Code Online (Sandbox Code Playgroud)
根据我的理解,应该从temp_cheques中插入VOUCHER中的每个记录,其ID和DENOMINATION字段对应于BOOK表中的条目(temp_cheques来自数据库备份,我试图以不同的格式重新创建).但是,当我运行它时,我收到一个错误:
Error: Operand should contain 1 column(s)
SQLState: 21000
ErrorCode: 1241
Run Code Online (Sandbox Code Playgroud)
我在SQuirrel中运行它并且没有遇到任何其他查询的问题.我的查询语法有问题吗?
编辑:
BOOK的结构是:
ID int(11)
START_NUMBER int(11)
UNITS int(11)
DENOMINATION double(5,2)
Run Code Online (Sandbox Code Playgroud)
temp_cheques的结构是:
ID int(11)
number varchar(20)
Run Code Online (Sandbox Code Playgroud) 根据维基百科在舍入负数时,您可以舍入绝对数.因此,通过这种推理,-3.5将四舍五入为-4.但是当我使用java.lang.Math.round(-3.5)返回-3时.有人可以解释一下吗?
我正在尝试使用phantomjs抓取我自己网站的快照 - 基本上,这是创建用户提交内容的"预览图像".
我在服务器上安装了phantomjs并确认从命令行运行它对适当的页面工作正常.但是,当我尝试从网站上运行它时,它似乎没有做任何事情.我已经确认正在调用代码,幻像实际上正在运行(我监视过程,并且当我调用它时可以看到它出现在进程列表中) - 但是,没有生成图像.
我不知道我应该在哪里找出它为什么不会创建图像 - 任何建议?相关代码块如下:
string arguments = "/c rasterize.js http://www.mysite.com/viewcontent.aspx?id=123";
string imagefilename = @"C:\inetpub\vhosts\mysite.com\httpdocs\Uploads\img123.png";
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = false;
p.StartInfo.FileName = @"C:\phantomjs.exe";
p.StartInfo.Arguments = arguments + " " + imagefilename;
p.Start();
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();
Run Code Online (Sandbox Code Playgroud) 我有一些当前可用的JSF代码(如下所示),我需要修改它以有条件地禁止显示表的某些行.我知道如何有条件地抑制特定单元格的显示,但这似乎创建了一个空单元格,而我正在尝试做的是根本不显示该行.
有什么建议?
<h:dataTable styleClass="resultsTable" id="t1" value="#{r.common}" var="com" headerClass="headerBackgrnd" rowClasses="rowOdd, rowEven" columnClasses="leftAlign, rightAlign, leftAlign">
<h:column>
<h:outputText rendered="#{com.rendered}" styleClass="inputText" value="#{com.description}: " />
</h:column>
<h:column>
<h:outputText styleClass="outputText" value="#{com.v1}" />
</h:column>
<h:column>
<h:inputText styleClass="inputText" value="#{com.v2}" />
</h:column>
</h:dataTable>
Run Code Online (Sandbox Code Playgroud)
基本上,所说的#{com.rendered}行将有条件地显示单个单元格的内容,当com.rendered为false 时生成空单元格.但是我想在某些条件下跳过显示器的整行 - 我该怎么做呢?
我有一个程序应该将文件发送到Web服务,这需要SSL连接.我按如下方式运行程序:
SET JAVA_HOME=C:\Program Files\Java\jre1.6.0_07
SET com.ibm.SSL.ConfigURL=ssl.client.props
"%JAVA_HOME%\bin\java" -cp ".;Test.jar" ca.mypackage.Main
Run Code Online (Sandbox Code Playgroud)
这工作正常,但当我改变第一行
SET JAVA_HOME=C:\Program Files\IBM\SDP\runtimes\base_v7\java\jre
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
com.sun.xml.internal.ws.client.ClientTransportException: HTTP transport error: java.net.SocketException: java.lang.ClassNotFoundException: Cannot find the specified class com.ibm.websphere.ssl.protocol.SSLSocketFactory
at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:119)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:140)
at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:86)
at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:593)
at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:552)
at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:537)
at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:434)
at com.sun.xml.internal.ws.client.Stub.process(Stub.java:247)
at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:132)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:242)
at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:222)
at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:115)
at $Proxy26.fileSubmit(Unknown Source)
at com.testing.TestingSoapProxy.fileSubmit(TestingSoapProxy.java:81)
at ca.mypackage.Main.main(Main.java:63)
Caused by: java.net.SocketException: java.lang.ClassNotFoundException: Cannot find the specified class com.ibm.websphere.ssl.protocol.SSLSocketFactory
at javax.net.ssl.DefaultSSLSocketFactory.a(SSLSocketFactory.java:7)
at javax.net.ssl.DefaultSSLSocketFactory.createSocket(SSLSocketFactory.java:1)
at com.ibm.net.ssl.www2.protocol.https.c.afterConnect(c.java:110)
at com.ibm.net.ssl.www2.protocol.https.d.connect(d.java:14)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:902)
at com.ibm.net.ssl.www2.protocol.https.b.getOutputStream(b.java:86) …Run Code Online (Sandbox Code Playgroud) 我有一个使用ClickOnce部署部署的程序,然后安装在我的机器上.我试过运行它,它给了我以下错误:
PLATFORM VERSION INFO
Windows : 5.1.2600.196608 (Win32NT)
Common Language Runtime : 2.0.50727.3053
System.Deployment.dll : 2.0.50727.3053 (netfxsp.050727-3000)
mscorwks.dll : 2.0.50727.3053 (netfxsp.050727-3000)
dfdll.dll : 2.0.50727.3053 (netfxsp.050727-3000)
dfshim.dll : 2.0.50727.3053 (netfxsp.050727-3000)
SOURCES
Deployment url : file:///C:/../MyProg.appref-ms%7C
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of C:\..\MyProg.appref-ms| resulted in exception. Following failure messages were detected:
+ The referenced assembly is not installed on your system. (Exception …Run Code Online (Sandbox Code Playgroud) 我被要求通过Paypal集成来查看ASP/C#应用程序中的错误.完整显示的错误是:
无法加载文件或程序集'log4net,Version = 1.2.0.30714,Culture = neutral,PublicKeyToken = b32731d11ce58905'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)
据我所知,这意味着找到的实际文件(即我的bin目录中的log4net.dll)与基于某些程序集配置的预期版本不匹配.我遇到的问题是我找不到这个文件的引用位置.
我可以访问站点的Web根目录中的所有文件,并且找不到引用此DLL的任何配置文件.我还需要在哪里查看导致错配的原因?
作为一个注释,我已经确保bin目录中的DLL版本是最新的,但这似乎没有解决任何问题.