我必须从 java 脚本中调用一个 C# 函数。为此,我使用 ajax 发布请求来调用 C# 函数。但是我的 C# 函数实际上并没有从 ajax 脚本中调用。我不知道不调用 C# 函数的原因是什么?
这是我的 Ajax 代码:
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.1.min.js"></script>
<script type="text/javascript">
$(function () {
$("#btnSend").click(function () {
var image = document.getElementById("myCanvas").toDataURL("image/png");
image = image.replace('data:image/png;base64,', '');
$.ajax({
type: 'POST',
url: 'Default.aspx/UploadImage',
data: '{ "imageData" : "' + image + '" }',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (msg) {
alert('Image sent!');
}
});
});
});
</script>
这是我的 C# 函数:
namespace sample
{
[ScriptService]
public partial class _Default : System.Web.UI.Page
{
[WebMethod()]
public static void UploadImage(string imageData)
{
FileStream fs = new FileStream("D:\\vs-2010projects\\delete_sample\\delete_sample\\myimages\\image.png", FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);
byte[] data = Convert.FromBase64String(imageData);
bw.Write(data);
bw.Close();
}
}
}