小编Chr*_*son的帖子

mysql .net连接器不能与.net 4.0项目和带有sprocs的连接器6.4.3一起使用

我不得不在这里重建一台机器,并认为我只是在这个过程中重做我的网站.我决定使用mvc 3,但仍然在后端使用mysql.

我本质上复制并粘贴了我的所有旧代码用于sql连接,以返回来自mysql存储过程的结果,但它根本不起作用.然后我尝试创建一个简单的插入sproc,它也不起作用.如果我在我的MySqlCommand上使用内联sql,它可以正常工作(选择和插入).我想用.net 4.0他们改变了CommandType.StoredProcedure上的东西...但我不能肯定地说.

当我在命令调用实际的sproc时设置断点时,它没有显示任何内容,也没有实际执行任何操作.我从CLI调用了sprocs,他们正在按照他们应该的方式工作.回到我的意思,我猜测.net 4,它不再使用"调用"命令了.有人遇到过这个问题吗?如果是这样,你有解决方案吗?反正有没有将System.Data 2.0 dll导入.net 4.0项目来验证我在想什么?

这是我数据库层的一些代码:

public static BuyCollectionModel GrabBuyData(GridSettings gridSettings)
        {
            int totalRows = 0;
            BuyCollectionModel buys = new BuyCollectionModel();
            using (MySqlConnection myConnection = new MySqlConnection(AppConfig.Connection))            {

                //string sql = "SELECT 100 as totalrows, c.* FROM cBuys as c";
                //MySqlCommand myCommand = new MySqlCommand(sql, myConnection);

                MySqlCommand myCommand = new MySqlCommand("usp_GetBuys", myConnection);
                myCommand.CommandType = CommandType.StoredProcedure;
                myCommand.Parameters.AddWithValue("@startrowvar", gridSettings.PageIndex);
                myCommand.Parameters.AddWithValue("@endrowvar", gridSettings.PageSize);
                myCommand.Parameters.AddWithValue("@sortcolvar", gridSettings.SortColumn);
                myCommand.Parameters.AddWithValue("@sortordervar", gridSettings.SortOrder);
                myConnection.Open();
                using (MySqlDataReader myReader = myCommand.ExecuteReader())
                {
                    while (myReader.Read())
                    {
                        buys.Add(FillBuys(myReader, out totalRows)); …
Run Code Online (Sandbox Code Playgroud)

mysql asp.net-mvc stored-procedures

12
推荐指数
1
解决办法
516
查看次数

html到jpg用c#

我做了一些搜索尝试从html页面生成jpg文件,并找到一个称为IECapt或类似的解决方案,需要服务器上的IE工作...不是我想要的.

这就是我要做的事情:从html页面生成jpg图像(html页面只是文本),然后在jpg上添加水印.

基本上,我正在创建一个"示例",我的用户可以看到它只是一个从html创建的图像(再次只是直接文本).如上所述,该样本应该有一个水印.有没有可用于c#的库?我想要的是传递我想要转换为方法的页面的网址,也许是jpg的保存路径,然后让它发挥作用,并将该网址转换为jpg图像,然后打上水印它,然后说万岁!

编辑1

从下面的答案添加一些代码..不能理解这个:

InitialContainer c = new InitialContainer("<html><body><div align=\"center\">This is my html, does it work here?</div></body></html>");
Bitmap m_Bitmap = new Bitmap(400, 700);
c.Paint(Graphics.FromImage(m_Bitmap));
m_Bitmap.Save(@"C:\test\Test.bmp");
Run Code Online (Sandbox Code Playgroud)


编辑2

这项工作.

Bitmap m_Bitmap = new Bitmap(400, 600);
PointF point = new PointF(0,0);
HtmlRenderer.Render(Graphics.FromImage(m_Bitmap), "<html><body><div align=\"center\">This is my html, does it work here?</div></body></html>",point, 500);
m_Bitmap.Save(@"C:\test\Test.bmp");
Run Code Online (Sandbox Code Playgroud)

.net html c# jpeg

12
推荐指数
1
解决办法
2万
查看次数

可以在多个mvc 3项目中共享视图

我正在一个解决方案下构建几个不同的asp.net mvc 3 Web项目.我希望能够在所有这些项目中使用一些视图,因为它们将在2或3个不同的页面上显示相同的内容(根据应用程序插入一些自定义内容).

这可能吗?

asp.net-mvc partial-views view

9
推荐指数
1
解决办法
6644
查看次数

itextsharp修剪pdf文档的页面

我有一个pdf文档,其中包含我用c#以编程方式填写的表单字段.根据三个条件,我需要修剪(删除)该文档中的某些页面.

这可能吗?

条件1:我需要保留第1-4页,但删除第5页和第6页

对于条件2:我需要保留第1-4页但删除5并保持6

对于条件3:我需要保留1-5页但删除6

.net c# itextsharp

9
推荐指数
2
解决办法
1万
查看次数

将对象的数组传递给webapi

我有一个.net mvc 4 webapi项目,我试图将一个对象数组传递给我的控制器上的方法.

我在这里找到了一些关于需要设置我的对象属性的例子:param1 = whatever¶m2 = bling¶m3 = blah.

但我不知道如何使用它来传递集合.

这是我的方法签名.注意我用[FromUri]属性修饰了参数.

public List<PhoneResult> GetPhoneNumbersByNumbers([FromUri] PhoneRequest[] id)
{
    List<PhoneResult> prs = new List<PhoneResult>();
    foreach (PhoneRequest pr in id)
    {
        prs.Add(PhoneNumberBL.GetSinglePhoneResult(pr.PhoneNumber, pr.RfiDate, pr.FinDate, pr.State));
    }
    return prs;
}
Run Code Online (Sandbox Code Playgroud)

这是我简单的PhoneRequest对象:

public class PhoneRequest
{
    public string PhoneNumber { get; set; }
    public string RfiDate { get; set; }
    public string FinDate { get; set; }
    public string State { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这是我用来传递的样本:

http://localhost:3610/api/phonenumber/getphonenumbersbynumbers/
   [{"PhoneNumber":"8016667777","RfiDate":"","FinDate":"2012-02-11","State":"UT"},
    {"PhoneNumber":"8018889999","RfiDate":"2012-12-01","FinDate":"","State":"UT"}]
Run Code Online (Sandbox Code Playgroud)

用这个"坏请求"回来

我也尝试过这个

http://localhost:3610/api/phonenumber/getphonenumbersbynumbers?
    id=[{"PhoneNumber":"8016667777","RfiDate":"","FinDate":"2012-02-11","State":"UT"}, …
Run Code Online (Sandbox Code Playgroud)

c# http-get asp.net-web-api

9
推荐指数
2
解决办法
8878
查看次数

wai aria和jquery.html()以及jquery.append()

我似乎无法找到任何资源或代码示例的方式,我可以让屏幕阅读器使用jquery工作(使用wai咏叹调)将html插入dom或将html附加到dom.

任何人都可以请我指出一些我可以用作指南的有用资源,或者提供一些代码示例,我可以用它来开发我的应用程序以满足可访问性标准,并将动态内容添加到我的页面上ajax post-back?

TIA.

编辑(添加了NVDA未读取的代码)...我缺少什么?

<html>
<head>

<script language="javascript" type="text/javascript">
    function addText() {
        document.getElementById("test").innerHTML = "some test";
}
</script>
</head>

<body>
<h2>NVDA</h2>

<div id="testarea">Some test area</div>
<div id="test" aria-describedby="testarea" aria-live="polite" aria-relevant="additions removals" role="region"></div><br />

<input type="button" value="click me" onclick="addText()" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

ajax jquery accessibility wai-aria wai

8
推荐指数
1
解决办法
2620
查看次数

使用C#加密AES以匹配Java加密

我已经获得了加密的Java实现,但不幸的是我们是一个.net商店,我无法将Java整合到我们的解决方案中.可悲的是,我也不是一个爪哇人,所以我已经和它斗争了几天,并且认为我终于转到这里求助了.

我已经搜索了高低不同的方法来匹配Java加密的工作方式,我已经达到了我需要在c#中使用RijndaelManaged的解决方案.我其实很亲密.我在c#中返回的字符串与前半部分匹配,但后半部分不同.

这是java实现的一个片段:

private static String EncryptBy16( String str, String theKey) throws Exception
{

    if ( str == null || str.length() > 16)
    {
        throw new NullPointerException();
    }
    int len = str.length();
    byte[] pidBytes = str.getBytes();
    byte[] pidPaddedBytes = new byte[16];

    for ( int x=0; x<16; x++ )
    {
        if ( x<len )
        {
            pidPaddedBytes[x] = pidBytes[x];
        }
        else
        {
            pidPaddedBytes[x] = (byte) 0x0;
        }

    }

    byte[] raw = asBinary( theKey );
    SecretKeySpec myKeySpec = new SecretKeySpec( raw, "AES" ); …
Run Code Online (Sandbox Code Playgroud)

c# java encryption aes rijndaelmanaged

8
推荐指数
2
解决办法
2万
查看次数

滚动我自己的@ Html.BeginfBrm()

我正在编写一个自定义验证集,它将显示div上所有缺少的元素.我希望能够使用一个自定义@Html.BeginForm()方法来写出div,但我真的不知道从哪里开始,因为这个坚果比一个写出标签或字符串的html扩展更难解决(表单封装数据/控件,}最后关闭).

我查看了内置BeginForm()方法的元数据版本,这对我没什么帮助.从本质上讲,我只是想,如果能够延长该法,并把它写出来MvcHtmlStringdiv,这将是显示/ JavaScript中隐藏.

最终我正在努力的是弄清楚如何编写这个具有开始和结束组件的自定义助手.

@using(Html.BeginForm())
{
...

}
Run Code Online (Sandbox Code Playgroud)

我希望能够做到这样的事情:

@using(Html.VBeginForm())
{
...

}
Run Code Online (Sandbox Code Playgroud)

并有渲染我的额外HTML

编辑:从下面的建议添加代码

public class VBeginForm : IDisposable
{
    private readonly HtmlHelper _helper;
    public VBeginForm(HtmlHelper htmlHelper, string areaName)
    {
        _helper = htmlHelper;
        var container = new TagBuilder("form");
        container.GenerateId(areaName);
        var writer = _helper.ViewContext.Writer;
        writer.Write(container.ToString(TagRenderMode.StartTag));
    }

    public void Dispose()
    {
        _helper.ViewContext.Writer.Write("</form>");
    }
}
Run Code Online (Sandbox Code Playgroud)

extension-methods html.beginform asp.net-mvc-3

7
推荐指数
1
解决办法
2174
查看次数

使用ajax和webapi进行长时间轮询时的瘦身是什么......它会杀死我的服务器吗?和字符串比较

我有一个非常简单的长轮询ajax调用,如下所示:

(function poll(){
    $.ajax({ url: "myserver", success: function(data){
        //do my stuff here

    }, dataType: "json", complete: poll, timeout: 30000 });
})();
Run Code Online (Sandbox Code Playgroud)

我刚刚今天下午选了这个例子,看起来效果很好.我正在使用它在我的页面上构建一些html,它几乎是瞬间我尽力而为.我有点担心,这会让我的服务器上的工作线程保持打开状态,如果我在服务器上有太大的负载,它就会完全停止.有人能否对这一理论有所了解?在后端我有一个webapi服务(.net mvc 4),它调用数据库,构建对象,然后将对象传回.在我看来,为了使这个工作,服务器将不得不不断地调用数据库...这可能是不对的???

我的下一个问题是客户端确定是否需要更新页面上的html的最佳方法是什么?目前我正在使用JSON.stringify()将我的对象转换为字符串并比较字符串和旧字符串,如果有一个delta,它会在页面上重写html.现在不是一个整体在对象下降很多,但它可能会变得非常大,我认为进行字符串比较可能在客户端上非常耗费资源......特别是如果它几乎不断地进行.

对我来说,底线是这样的:我不确定轮询的工作时间有多长.我只是用Google搜索并找到了上面的示例代码并实现了它,从表面上看,它很棒.我只是担心它会让事情变得糟糕down(在服务器上)和我将旧结果与new进行比较的方式会降低(在客户端上).

我们非常感谢您提供的任何和所有信息.

TIA.

ajax long-polling asp.net-web-api

6
推荐指数
2
解决办法
6062
查看次数

使用新订单中的片段更新viewpager

我有一个ViewPager设置,它从服务器传递的数据中为其页面(视图)绘制数据.有时,服务器将发送将重新排序视图的新数据(有时会添加新视图),我需要在用户当前查看特定片段时在我的Android设备上无缝地进行此操作.

我将它设置为在从服务器下拉新数据时调用notifyDataSetChanged(),但这似乎将幻灯片的缓存版本保留在当前查看的幻灯片的左侧和右侧,这可能会随着重新排序而改变.我在这里看过这个主题:ViewPager PagerAdapter没有更新View并实现了第一个工作正常的解决方案,除了它重新加载正在查看的当前幻灯片,这对我的目的不起作用.我在第二个答案中实现了在同一页面上提出的setTag()方法,并且可以用于更新幻灯片上的信息,但是它不会帮助我重新排序它们.

有什么方法可以重新排序幕后的所有幻灯片,而不会在当前查看的幻灯片中造成任何打击?

TIA

编辑:添加代码并要求进一步澄清

这是我的Adapter类.

    private class ScreenSlidePagerAdapter extends FragmentPagerAdapter {
    ContestEntriesModel entries;

    public ScreenSlidePagerAdapter(FragmentManager fm, ContestEntriesModel Entries) {
        super(fm);
        this.entries = Entries;
    }

    @Override
    public long getItemId(int position) {
        return entries.entries[position].ContestEntryId;

    }

    @Override
    public int getItemPosition(Object object) {
        android.support.v4.app.Fragment f = (android.support.v4.app.Fragment)object;
        for(int i = 0; i < getCount(); i++){

            android.support.v4.app.Fragment fragment = getItem(i);
            if(f.equals(fragment)){
                return i;
            }
        }
        return POSITION_NONE;
    }


    @Override
    public android.support.v4.app.Fragment getItem(int position) {

        long entryId = getItemId(position);
        //Log.d("EntryIds",Integer.toString(entryId));
        if(mItems.get(entryId) != …
Run Code Online (Sandbox Code Playgroud)

android android-viewpager fragmentpageradapter android-pageradapter

6
推荐指数
1
解决办法
4214
查看次数