小编Cap*_*chi的帖子

如何在C#/ .Net中集成MailChimp

我想通过MailChimp发送电子邮件.如何在.Net中这样做?

有没有人有示例代码?

谢谢.

c# asp.net mailchimp

21
推荐指数
4
解决办法
3万
查看次数

ODP.NET错误无法找到请求的.Net Framework数据提供程序

我正在尝试使用Oracle 11g Express和.NET 4.0框架开发ASP.NET MVC 4.0应用程序.我可以使用ODP.NET提供程序连接到数据库,也可以针对数据库生成我的EDMX.我不能做的是使用实体框架查询底层数据库.使用生成的connectionString Visual Studio实例化我的DbContext时,出现以下错误:

无法找到请求的.Net Framework数据提供程序.它可能没有安装

但是,它安装是因为

  1. 我可以在GAC中看到dll.
  2. 它在machine.config中提到.
  3. 它由我的项目引用.
  4. 我实际上用它从数据库生成我的EDMX.
  5. 我已经确认我到处都引用了正确的版本(4.112.3.0)

我在Cassini本地运行代码,我的硬件是32位架构,所以我假设我只能使用32位DLL,所以这不是架构问题.

代码的具体位是这样的:

public class MyContext : ObjectContext, IUnitOfWork
{
    public MyContext() 
    : base(ConfigurationManager
          .ConnectionStrings["OracleEntities"]
          .ConnectionString)//Connectionstring is verified
    {}
}
Run Code Online (Sandbox Code Playgroud)

在我离开一切之前请帮助我,留胡子然后在某个地方住在山上.

解决方案:由于我没有看到任何提及解决方案,我会在这里为后代提及它.Andrei下面询问了我的连接字符串格式,虽然我很狡猾,但我去看看了.这就是我所看到的:

metadata=res://*/OracleModel.csdl|res://*/
OracleModel.ssdl|res://*/
OracleModel.msl;
provider=provider=Oracle.DataAccess.Client;
provider connection string="DATA SOURCE=localhost:1521;
PASSWORD=xxx;PERSIST SECURITY INFO=True;USER ID=xxx
Run Code Online (Sandbox Code Playgroud)

现在,要特别注意这条线

provider=provider=Oracle.DataAccess.Client;
Run Code Online (Sandbox Code Playgroud)

事实上它应该阅读

provider=Oracle.DataAccess.Client;
Run Code Online (Sandbox Code Playgroud)

否则你告诉EF使用[provider.dll],这不是真的.另请注意,似乎已覆盖或忽略connectionString元素的providerName属性.

更新2:如果此STILL没有帮助,请查看machine.config.您应该看到以下部分:

<add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client" description="Oracle Data Provider for .NET" type="Oracle.DataAccess.Client.OracleClientFactory, Oracle.DataAccess, Version=4.112.3.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />

  <remove invariant="Oracle.DataAccess.Client" /> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc odp.net oracle11g

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

ASP.NET MVC下拉列表未在render上选择值

我有这个恼人的问题,我的DropDownlist默认情况下不选择当前值.

控制器:

var YearsCycling = new SelectList(new List<SelectListItem>() 
{ 
    new SelectListItem(){ Value="1yr", Text="1yr"},
    new SelectListItem(){ Value="1-3yrs", Text="1-3yrs"}, 
    new SelectListItem(){ Value="3-5yrs", Text="3-5yrs"}, 
    new SelectListItem(){ Value="5-10yrs", Text="5-10yrs"}, 
    new SelectListItem(){ Value="10+yrs", Text="10+yrs"} 
},
"Value",
"Text",
new SelectListItem() { Value = "5-10yrs", Text = "5-10yrs", 
Selected = true });
ViewBag.YearsCycling = YearsCycling;
Run Code Online (Sandbox Code Playgroud)

视图:

<%:Html.DropDownListFor(model=>model.YearsCycling,(SelectList)ViewBag.YearsCycling,"-select-") %>
Run Code Online (Sandbox Code Playgroud)

但它不是选择"5-10yrs",而是显示"-select-"选项,如果我检查DOM源,则不会选择任何元素.

更新:我仍然不知道问题是什么,但我现在通过做一些丑陋的事情让它工作:

<%
    var sl = (SelectList)ViewBag.YearsCycling;
%>
<select name="YearsCycling" id="YearsCycling">
<%foreach(var li in sl){  %>
    <option value="<%:li.Value %>" <%if(li.Selected){%>selected="true"<%}%>><%:li.Text %></option>
<%} %>
</select>
Run Code Online (Sandbox Code Playgroud)

这不是最好的解决方案,但如果你因为你一直在拉扯你的头发来解决这个问题,这应该会有所帮助.

asp.net-mvc

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

哪里可以下载.net 1.0 DLL

我需要使用Telerik JustDecompile反编译旧的类库.我的问题是该库引用了System.Web.dll版本1.0.5000.0之类的东西,如果我没弄错的话,这是.NET 1.0版本.

我可以访问的所有PC都在运行Windows 7,所以我不能简单地安装1.0框架.所以,我需要以其他方式获取库.

如果我在不解析引用的情况下反编译库,就会发生奇怪的事情,就像库中的所有web方法都使用空[SoapDocumentMethod(,)],[[SoapHeader(,)]等注释一样进行反编译.

我还需要解析mscorlib.dll,System.Data.dll和System.Web,但是如果我在反编译后手动添加对较新版本的引用似乎并不重要.这只是System.Web.Services似乎是一个问题.

.net c# decompiling telerik

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

重命名SSMS DB连接名称

标题可能有点误导,所以让我澄清一下:我不想知道如何重命名连接字符串或数据库名称。我要找出的是如何在SQL Management Studio中为数据库连接创建友好标签?

例如,我有以下连接:

在此处输入图片说明

我想将它们重命名为其他名称,例如“ dev server”,“ PreProd”,“ Live”或任何情况。我以为我可以在SSMS中轻松地做到这一点,但显然我做不到。

我一直担心我可能会在不正确的服务器上无意中进行更改,并且拥有一个友好的名称将大大有助于防止该错误。

ssms

7
推荐指数
2
解决办法
1709
查看次数

为什么我的CSV文件末尾有一百万个空字符

我正在动态生成CSV数据导出.我这样做是通过获取项的哈希集,然后逐行转换它们并将它们写入MemoryStream,然后将其作为FileResult发送到客户端.问题是文件末尾有大约一百万个NULL字符,我猜这些字符的数量等于hashset中的项目数.但它们位于文件的末尾,而不是每行的结尾.

无论如何,代码是这样的:

Controller方法:

public ActionResult ExportList(ListExportModel model)
{
  System.IO.MemoryStream ms = ls.ExportListToCsv(model,Server.MapPath("~/uploads"));
  return File(ms.GetBuffer(),"text/csv",model.MailingList.ListName + ".csv");
}
Run Code Online (Sandbox Code Playgroud)

ExportListToCsv方法

public MemoryStream ExportListToCsv(ListExportModel model, string folderpath)
{
    MemoryStream stream = new MemoryStream();
    StreamWriter writer = new StreamWriter(stream);

    writer.WriteLine(string.Join(",", model.Columns));
    var data = GetListItemsFromCsv(model.ListId, folderpath);

    XmlDocument doc = new XmlDocument();
    // Parallel.ForEach(data, (li) =>
    foreach (var li in data)
    {
        string line = "";
        foreach (var field in model.Columns)
        {
            doc.LoadXml(li.CustomFields);
            switch (field)
            {
                //our standard fields
                    case "email":
                        line += li.Email + …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc

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

类似的JSON请求,但一个发送null对象

我正在开发ASP.NET MVC4.我的代码中有两个提交JSON对象的JSON请求.其中一个工作正常,另一个由于某种原因传递null.有任何想法吗?

注意:在两个实例中,请求实际上都到达了预期的控制器.只是第二个传递NULL,而不是我填充的对象.

工作javascript:

 $('#btnAdd').click(function () {
            var item = {
                Qty: $('#txtQty').val(),
                Rate: $('#txtRate').val(),
                VAT: $('#txtVat').val()
            };

            var obj = JSON.stringify(item);
            $.ajax({
                type: "POST",
                url: "<%:Url.Action("AddToInvoice","Financials")%>",
                dataType: "json",
                contentType: "application/json; charset=utf-8",
                data: obj,
                success: function (result) {
                    alert(result);                    
                },
                error: function (error) {
                    //do not add to cart
                    alert("There was an error while adding the item to the invoice."/* + error.responseText*/);
                }
            });
        });
Run Code Online (Sandbox Code Playgroud)

工作控制器动作:

[Authorize(Roles = "edit,admin")]
public ActionResult AddToInvoice(InvoiceItem item)
{
    return Json(item);
}
Run Code Online (Sandbox Code Playgroud)

传递NULL对象的javascript:

$('#btnApplyDiscount').click(function () …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc jquery json

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

从Garmin GPSMap 62设备读取数据

我需要使用设备控制Javascript库从GPSMap 62设备读取数据.问题是,与旧设备不同,此设备每天将其航点存储在单独的.GPX文件中.javascript库期望所有轨道和航点都在current.gpx文件中,但62将它们存储在例如Waypoints_06-MAY-14.gpx等每天.

如果没有要求用户手动上传相应的文件,是否有人让DeviceControl库实际支持具有单独GPX文件的新设备?

作为额外的奖励,Garmin设备控制库已被弃用,因此不会有任何更新.

一些代码

startReadFromGps: function(deviceNumber) {
     this.plugin.StartReadFromGps( deviceNumber ); //invokes the external plugin
},
Run Code Online (Sandbox Code Playgroud)

javascript garmin

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

iPhone Safari书签创建新会话

我为我们的一个客户开发的网站有一个奇怪的问题.我要做的是使用"添加到主屏幕"Safari菜单项为主页添加书签.然后我会浏览一段时间,然后回到手机的主屏幕,例如,如果有人打电话给我,或者我正在检查邮件或iPhone用户做的任何事情.当我点击主屏幕上的书签时,我将进入登录页面.当我登录时,我正常进入主页,但如果我尝试在其他任何地方导航,则链接将在新的浏览器实例中打开.我知道这是因为我的书签链接以全屏模式打开Safari会话,但新浏览的链接打开了一个Safari会话,地址栏和其他好东西可见.然后我必须再次登录,但这次一切正常.

只有当我使用带书签的链接时,它才会执行此奇怪的登录操作.该网站在台式机(Mac和PC)以及Android和Windows Phone 7.x和8.x设备上运行良好.

iphone mobile-safari ios ios7

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

在使用MVC应用程序和针对MySQL的MS Access时记录覆盖

一些背景知识:我们开发了客户端MS Access应用程序的ASP.NET MVC端口.应用程序使用/使用MySQL作为ODBC的数据存储.我们遇到的是,如果客户端使用MS Access应用程序捕获新记录,并且在MVC应用程序捕获新记录后不久,MVC应用程序的记录似乎会覆盖Access应用程序创建的最后一条记录,如以及创建第二条记录.

实际上,Access应用程序的记录最初看起来像这样

ID | NAME | SURNAME
1  | joe  | Schmoe  
Run Code Online (Sandbox Code Playgroud)

但是,当MVC应用程序创建其中一条记录时,会发生以下情况:

ID | NAME  | SURNAME
1  | james | smith
2  | james | smith
Run Code Online (Sandbox Code Playgroud)

MVC应用程序似乎覆盖了Access捕获的最后一条记录,以及创建新记录.

我们使用Entity Framework 5.我们所做的就是保存记录

var record = new Person(){NAME = "james", SURNAME = "smith"};
db.People.Add(record);
db.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

只有在客户端使用Access应用程序时才会发生此类事情.并且只有当最后添加的记录来自Access应用程序且新记录来自MVC/EF应用程序时才会发生.

任何输入将不胜感激.

通过Access捕获一系列记录时,不会发生这种情况.通过Entity Framework捕获一系列记录时,它不会发生.首先通过Entity Framework和THEN Access捕获时,不会发生这种情况.它仅在序列为Access first,Entity Framework second时发生.

c# mysql ms-access odbc entity-framework

5
推荐指数
1
解决办法
184
查看次数