C# MVC中条码的实现

C# MVC中条码的实现,c#,model-view-controller,barcode,C#,Model View Controller,Barcode,我想在IIS上托管的MVC web应用程序中为超级商店实现条形码。经过3天的研究,我在谷歌上找到了一个例子,但在MVC中没有。请告诉我如何在MVC中实现此代码,以便在视图中传递字符串条形码图像显示时 public void CreateBarcode(string code) { var myBitmap = new Bitmap(500, 50); var g = Graphics.FromImage(myBitmap);

我想在IIS上托管的MVC web应用程序中为超级商店实现条形码。经过3天的研究,我在谷歌上找到了一个例子,但在MVC中没有。请告诉我如何在MVC中实现此代码,以便在视图中传递字符串条形码图像显示时

public void CreateBarcode(string code)
        {
            var myBitmap = new Bitmap(500, 50);
            var g = Graphics.FromImage(myBitmap);
            var jgpEncoder = GetEncoder(ImageFormat.Jpeg);

            g.Clear(Color.White);

            var strFormat = new StringFormat { Alignment = StringAlignment.Center };
            g.DrawString(code, new Font("Free 3 of 9", 50), Brushes.Black, new RectangleF(0, 0, 500, 50), strFormat);

            var myEncoder = System.Drawing.Imaging.Encoder.Quality;
            var myEncoderParameters = new EncoderParameters(1);

            var myEncoderParameter = new EncoderParameter(myEncoder, 100L);
            myEncoderParameters.Param[0] = myEncoderParameter;
            myBitmap.Save(@"E:\Barcode.jpg", jgpEncoder, myEncoderParameters);
        }

        public ImageCodecInfo GetEncoder(ImageFormat format)
        {

            var codecs = ImageCodecInfo.GetImageDecoders();

            foreach (var codec in codecs)
            {
                if (codec.FormatID == format.Guid)
                {
                    return codec;
                }
            }
            return null;
        }

看起来您知道如何制作条形码,并且需要知道如何将其从控制器发送到页面。下面是一个小代码,可以帮助您将所有内容组合在一起

在您的页面中

<img src="@Url.Action("Barcode", new { code = "*ABC123*" })" alt="" />

展示你迄今为止所做的尝试,也许有人会尝试帮助你。@KernelPanic先生,我是编程新手。我不知道什么是空函数的返回类型。至少告诉我void函数的返回类型应该是什么。所以我可以存储一些变量等,然后将它呈现给我的视图。void函数不返回任何东西-这就是为什么它们被标记为void我知道void不返回任何东西。我想问的是数据类型应该是什么,而不是void???感谢u@MEC的回复,但正如我在问题中提到的,我只是从google复制了代码。你能再定义一下吗???
public ActionResult Barcode(string code)
{
    var myBitmap = new Bitmap(500, 50);
    var g = Graphics.FromImage(myBitmap);

    // the code that makes the barcode
    // the code that makes the barcode
    // the code that makes the barcode

    // Put the image into a stream to return
    MemoryStream ms = new MemoryStream();
    myBitmap.Save(ms, ImageFormat.Png);

    // Reset the stream position before returning it
    ms.Position = 0;
    return new FileStreamResult(ms, "image/png");
}