小编jam*_*rio的帖子

"丢失编译器所需成员"错误被多次抛出,几乎没有更改代码

今天在对我运行的C#MVC站点进行了一些更改之后,我又回去做了一些修改并遇到了这个错误:

缺少编译器需要成员System.Runtime.CompilerServices.ExtensionAttribute..ctor

错误有点模糊(显然除了它的描述),因为它没有给我一个文件,行或列来引用,只有项目.此外,它总共抛出错误20次.在我部署的时间(当时完全正常运行)和现在之间,我只对代码进行了三次更改.我恢复了我的更改,它仍然抛出了同样的错误,这对我来说毫无意义.

我没有在SO或Google上找到关于此错误的大量信息,除了这个家伙解决方案和一些Mono项目错误(我没有使用Mono).上面给出的解决方案需要添加一个类定义,允许编译器解析引用.我并不特别想这样做,因为在此之前我不需要这样做,这会让我的代码变得混乱.

只是好奇,如果有人之前遇到过这个问题.提前致谢!

c# asp.net-mvc

80
推荐指数
7
解决办法
6万
查看次数

使用XSL呈现整个网页的好处/缺点

我正处于与客户一起规划项目的初步阶段,以重做他们当前的网站.我查看了他们当前的网站,看看他们目前正在处理什么问题,经过检查,我注意到每个页面都是使用XSLT完全呈现的.我熟悉XSLT,我用它来渲染需要经常在客户端刷新的自定义控件,但从不渲染整个页面.

帮助我变得不那么无知,这背后可能是什么原因?这带来了哪些好处或缺点?

xslt

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

args [0]是否保证是执行的路径?

这是一个基本问题,但也是一个重要的问题......

启动C++程序时,其主方法具有以下共同签名:

int main(int argc, char* args[]) {
    //Magic!
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

是args [0]始终保证是当前正在运行的程序的路径?那么跨平台呢(因为我在Linux环境中,但可能稍后移植.)?

c++

10
推荐指数
3
解决办法
7157
查看次数

在没有剪裁的情况下缩放SDL曲面的正确方法?

缩放SDL曲面的正确方法是什么?我在网上找到了一个解释,但它需要逐像素地重新绘制Surface.看起来应该有一些方法可以通过SDL本地执行此操作,而不是像这样重绘图像.我无法在SDL文档中找到任何涉及此内容的内容.通过修改曲面宽度和高度,我可以毫无问题地调整曲面大小,但会剪切生成的曲面.

opengl sdl

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

使用C++在Linux中监控磁盘安装的最佳方法?

我目前正在构建一个Carputer前端,它需要的一个功能是能够识别何时插入外部媒体,例如USB/SD记忆棒或iPod.插入后,我将扫描设备上的音乐/视频/图像并将其添加到媒体库中.或者,我需要知道何时删除这些设备,以便我可以从当前可用的媒体中删除添加的项目.

我的问题是,在使用C++的Linux环境中监视磁盘插入/删除的最佳方法是什么?

我可以监视/ media文件夹,以便Linux自动安装磁盘,但这是完成任务的最佳方法吗?感谢您的任何见解!

c++ linux

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

Microsoft Code Contracts可以与ASP.NET网站一起使用吗?

我目前在ASP.NET MVC应用程序中使用Microsoft Code Contracts没有任何问题,但我似乎无法在基本的ASP.NET网站上运行它.我不完全确定它是用于这种类型的项目(虽然它应该没关系)所以我想把它带给每个人.

我可以很好地编译合同,但代码跳过它们,因为我假设它没有通过属性页面启用,就像你在其他项目类型(即ASP.NET MVC)中那样.我已经进入了我的ASP.NET网站中的项目的属性页面(它显示了一个对话框,而不是典型的属性页面),但它没有产生相同的菜单选项,因此,没有专门的部分编码合同.

此外,我在类库项目中正确启用了Microsoft Code Contracts,我将其用于将业务逻辑与Web站点分离.合同编译正常,但是当合同被违反时,它会抛出一个"Exception of type 'System.ExecutionEngineException' was thrown"没有内部异常的无法提供的错误.我的合同指定了一条在违规时显示的消息,但它不在异常范围内.它只是暂停了进程的执行(我认为这是Microsoft Code Contracts的默认功能).

我找不到任何明确说明特定项目类型可以或不可以(或不应该)与合同一起使用的地方,所以我只是想知道是否有人遇到过这个问题.

谢谢你的帮助!

asp.net configuration code-contracts microsoft-contracts

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

使用 Go 从 Gmail API 解码邮件正文

我正在尝试使用 Go 中的 Gmail API 检索邮件的完整邮件正文。目前,当我这样做时,我只能得到消息正文的前三个字符,即“<ht”。我很确定我的问题在于消息正文的解码,但我似乎无法弄清楚我做错了什么。

我查看了其他几种语言的示例,并尝试将它们翻译成 Go,但没有成功。编码的消息正文相当大,所以我相当肯定一些数据在某处丢失了。

这是一个(删节的)代码片段,说明了我是如何尝试解决这个问题的:

req := svc.Users.Messages.List("me").Q("from:someone@somedomain.com,label:inbox")

r, _ := req.Do()

for _, m := range r.Messages {

  msg, _ := svc.Users.Messages.Get("me", m.Id).Format("full").Do()

  for _, part := range msg.Payload.Parts {

    if part.MimeType == "text/html" {

      data, _ := base64.StdEncoding.DecodeString(part.Body.Data)
      html := string(data)
      fmt.Println(html)

    }
  }
}
Run Code Online (Sandbox Code Playgroud)

gmail go gmail-api

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

文件上传在 jQuery UI 对话框中不起作用

所以我有一个相当奇怪的问题,我想看看是否有人对此有所了解。

我有一个页面,其中显示了已上传到我们服务器的文件网格。网格的工具栏为他们提供了上传更多文件的能力。当他们单击工具栏上的“添加文件”按钮时,会出现一个 jQuery UI 对话框模式窗口,其中包含一个简单的文件上传控件。选择文件后,他们单击对话框上的“上传”按钮,提交底层表单以供上传。另请注意,因为我使用的是 asp.net,所以页面上只有一个表单,所以我不会提交错误的表单。

现在...当我尝试在后端查找上传的文件时,没有上传任何文件。更糟糕的是,如果我将上传控件移出对话框 div 并直接从没有对话框的页面使用它,则上传工作正常。

这让我相信,即使我在主表单中定义了将成为我的对话框的 div 以允许它通过回发提交,但 jQuery 正在以某种方式移动它或将它与表单分离。

这可能吗?或者还有什么我可能遗漏的吗?我似乎找不到任何说明这两种方式的文档。提前致谢!

asp.net jquery jquery-ui file-upload modal-dialog

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

处理不准确的系统时钟

我有一个基于Windows的系统,它位于Amazon EC2实例上.存在一个已知问题,即Windows EC2实例在保持系统时间同步方面存在问题.我将随机登录系统,发现我的系统时钟距离几秒钟(不是太大的交易......)到几分钟甚至几小时(显然是一笔巨大的交易).

考虑到我的网站的主要目标是发布安全S3内容的链接,这些内容被严格的时间限制(即有时只需30秒到一分钟)锁定,这对我来说是个大问题.淘宝亚马逊的帮助论坛已经产生了许多答案,这些答案根本不起作用,亚马逊似乎忽略了声称它与Windows相关的问题.无论如何,我决定把事情掌握在自己手中,而不是在亚马逊上等待.

我考虑过的事情:

  • 每小时左右创建一个命中时间服务器列表的服务,获取当前时间,计算偏移量,然后使用此偏移量生成准确的链接.缺点是我需要有大量的时间服务器列表,这样他们就不会阻止我经常点击它们.此外,如果时间在其中一个时段的中间随机固定,我的链接将再次开始中断.
  • 创建Linux EC2实例并找到获取其内部时间的方法.我还没有读过关于他们在EC2中的时间准确度的任何内容,但我不得不假设这个废话更好.
  • 在其他地方托管我的网站有精确的时钟......

还有其他你可以想到的选择,我可能错过了吗?我并不是真的反对任何事情,只有一个例外是用另一种语言重写我的网站以便远离Windows(它目前是.Net MVC应用程序).

提前致谢!

编辑:另外值得注意的是,我不能使用基于referrer的安全性作为我正在使用的插件,使用这些链接并不是100%在某些浏览器中发送引用者.

.net time amazon-ec2

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

Go 中是否可以使用 ldflags 设置未分配的整数?

我知道有几种方法可以通过一些额外的代码来完成此任务,但这让我很好奇......有没有一种方法可以使用 ldflags 在 Go 应用程序中设置未分配的整数?例如,你可以打电话给...

go build -ldflags "-X main.CurrentEnvironment 1"
Run Code Online (Sandbox Code Playgroud)

并设置它:

package main

var CurrentEnvironment int

func main() {

    ...

}
Run Code Online (Sandbox Code Playgroud)

我找不到任何支持这一点的文档,所以我认为答案是否定的,但也许有办法。

go

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

打开连接时,Exchange Web服务流式订阅超时

我目前正在解决与Exchange Web服务相关的问题.问题是,在打开与流式订阅的连接(通过StreamingSubscriptionConnection对象)时,操作在调用Open方法时挂起.以下是挂起的代码,供参考:

_streamingSubscriptionConnection = new StreamingSubscriptionConnection(_exchangeService, _connectionLifetime);
_streamingSubscriptionConnection.AddSubscription(_subscription);
_streamingSubscriptionConnection.OnNotificationEvent += new StreamingSubscriptionConnection.NotificationEventDelegate(OnNotificationEvent);
_streamingSubscriptionConnection.OnSubscriptionError += new StreamingSubscriptionConnection.SubscriptionErrorDelegate(OnSubscriptionError);
_streamingSubscriptionConnection.OnDisconnect += new StreamingSubscriptionConnection.SubscriptionErrorDelegate(OnDisconnect);
_streamingSubscriptionConnection.Open();
Run Code Online (Sandbox Code Playgroud)

它通常需要大约两分钟,然后抛出一个ServiceRequestException消息是:

请求失败了.操作已超时.

值得一提的是,即使我将超时设置为一分钟,它仍然需要超过一分钟然后抛出此异常.该呼叫永远不会超过该Open命令.

我的问题是,过去有没有人遇到过这个问题?此外,是否有任何可用的工具可用于诊断任何连接问题,以确定异常是在我的端,Exchange服务器端,还是中间的某个地方?我已经尝试过Fiddler和Microsoft网络监视器来寻找任何模式,但我很难辨别任何东西.

提前致谢!

编辑:要添加到此,如果我添加跟踪侦听器,我会得到相当多的输出.我可以看到它检索订阅ID,然后尝试连接.当它发出连接请求时,这是在发出Open命令和超时之间记录的内容:

<Trace Tag="EwsRequestHttpHeaders" Tid="10" Time="2013-01-24 19:16:18Z">
      POST /ews/exchange.asmx HTTP/1.1
      Content-Type: text/xml; charset=utf-8
      Accept: text/xml
      User-Agent: ExchangeServicesClient/14.03.0032.000
      Accept-Encoding: gzip,deflate      
</Trace>

<Trace Tag="EwsRequest" Tid="10" Time="2013-01-24 19:16:18Z" Version="14.03.0032.000">
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
        <soap:Header>
            <t:RequestServerVersion Version="Exchange2010_SP1" />
        </soap:Header>
        <soap:Body>
            <m:GetStreamingEvents>
                <m:SubscriptionIds>
                    <t:SubscriptionId>GABsdGNmaXN3bXNnY2EwNi5mbmZpcy5jb20QAAAAnQCowdNSt0iTEhqVr8+a1GPHu2t+yM8I</t:SubscriptionId>
                </m:SubscriptionIds>
                <m:ConnectionTimeout>30</m:ConnectionTimeout>
            </m:GetStreamingEvents>
        </soap:Body>
    </soap:Envelope>
</Trace>
Run Code Online (Sandbox Code Playgroud)

我试图排除网络问题,但是有点困难.此时欢迎任何建议.

.net c# exchange-server exchangewebservices

3
推荐指数
1
解决办法
2120
查看次数