我在 Windows Phone 8 应用程序中使用 C#,我需要将一张图像转换为 Base 64。我使用以下代码:
public string ImageToBase64(Image image, System.Drawing.Imaging.ImageFormat format)
{
using (MemoryStream ms = new MemoryStream())
{
// Convert Image to byte[]
image.Save(ms, format);
byte[] imageBytes = ms.ToArray();
// Convert byte[] to Base64 String
string base64String = Convert.ToBase64String(imageBytes);
return base64String;
}
}
Run Code Online (Sandbox Code Playgroud)
但它返回此错误:系统名称空间中不存在绘图名称的名称和类型,可能没有程序集引用。
我尝试安装 ddl,但不行。
我写了这个简单的彗星实现
var app = angular.module('App', ['restangular', 'Comet']);
app.config(function(RestangularProvider) {
//RestangularProvider.setBaseUrl('http://localhost/my-rest-api/api/v1/');
RestangularProvider.setBaseUrl('http://[private-ip]/my-rest-api/api/v1/');
RestangularProvider.setDefaultHttpFields({timeout: 60*60*24});
});
var comet = angular.module('Comet', []);
comet.factory('CometService', ['Restangular', function(Restangular){
var cometUrl = Restangular.all('comet');
var asteroid = function(cometUrl, callback){
cometUrl.post({user:"Username"}).then(function(data){
callback(data.plain());
asteroid(cometUrl,callback);
})
};
return {
getComet: function(callback){
asteroid(cometUrl,callback);
}
}
}]);
app.controller('Ctrl', ['$scope', 'CometService', function($scope, CometService){
function callback(data){
console.log(data);
}
CometService.getComet(callback);
}]);
Run Code Online (Sandbox Code Playgroud)
它在localhost中很好用,但是如果从其他主机调用该API则不能。如果我不使用矩形,则相同的代码也可以正常工作。该API是使用Phalcon框架用PHP编写的,并且设置了所有CORS标头。所有目录都具有777权限。如果我直接在Restangular.all(url)中使用http:// [private-ip] / my-rest-api / api / v1 / comet url,并且XMLHttpRequest(OPTION Angular.js 9827)是403错误被应用加上了这段代码。